location配置用于匹配请求的URL,即ngnix中的$request_uri变量
location配置规则
root
location /act-model-web {
root /usr/share/nginx/web/;
index index.html;
}
root代表设置请求的根路径,简单来说即将url中域名部分替换为root定义的路径。例如:
访问
http://192.168.33.10/act-model-web/
将被nging转发到
/usr/share/nginx/web/act-model-web/
alias
location /act-model-web {
alias /usr/share/nginx/web/;
index index.html;
}
和root相同作用的还有一个属性叫做alias,用法和root类似,例如:
访问
http://192.168.33.10/act-model-web/pic.jpg
将被nging转发到
/usr/share/nginx/web/pic.jpg
总结:
- root是替换url中域名部分
- alias是替换域名+匹配部分
index
index定义索引,按顺序匹配。即在nginx代理转发后的路径下匹配index定义的文件,匹配中则访问
proxy_pass配置规则
location /act-gateway/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
#反向代理地址
proxy_pass http://act-model-web:8765/;
}
proxy_pass以“/”结尾
将域名+匹配字符串替换为proxy_pass地址。例如
访问
http://192.168.33.10/act-gateway/api/auth/jwt/token
将被nging转发到
http://act-model-web:8765/api/auth/jwt/token;
proxy_pass不以“/”结尾
将原url除域名之外的路径原样转发。例如:
访问
http://192.168.33.10/act-gateway/api/auth/jwt/token
将被nging转发到
http://act-model-web:8765/act-gateway/api/auth/jwt/token;