在nginx.exe目录,打开命令行工具,用命令 启动/关闭/重启nginx
start nginx : 启动nginx
nginx -s reload :修改配置后重新加载生效
nginx -s reopen :重新打开日志文件
nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否正确
关闭nginx:
nginx -s stop :快速停止nginx
nginx -s quit :完整有序的停止nginx
代理本地静态文件
location /jf-XXX/ {
add_header Access-Control-Allow-Origin *;
alias D:/workstation/XXX/work/Version01/projects/jf-XXX/WebRoot/;
}
反向代理
Nginx反向代理到另一个提供静态文件的Nginx服务器
https://www.jb51.cc/nginx/532422.html
location ^~ /wscp-file2/ {
proxy_pass http://172.16.40.21:8811/wscp-file/;
}
代理下载文件
location /service/download/ {
default_type 'application/octet-stream';
add_header Content-disposition "attachment";
alias /opt/static/service/download/;
Nginx - 反向代理location与proxy_pass配置规则总结
location 是否以“/”结尾
在 ngnix 中 location 进行的是模糊匹配
没有“/”结尾时,location/abc/def 可以匹配 /abc/defghi 请求,也可以匹配 /abc/def/ghi 等
而有“/”结尾时,location/abc/def/ 不能匹配 /abc/defghi 请求,只能匹配 /abc/def/anything 这样的请求
proxy_pass 代理规则(是否以“/”结尾)
(1)配置 proxy_pass 时,当在后面的 url 加上了 /,相当于是绝对路径,则 Nginx 不会把 location 中匹配的路径部分加入代理 uri。
比如下面配置,我们访问 http://IP/proxy/test.html,最终代理到 URL 是 http://127.0.0.1/test.html
(2)如果配置 proxy_pass 时,后面没有 /,Nginx 则会把匹配的路径部分加入代理 uri。
比如下面配置,我们访问 http://IP/proxy/test.html,最终代理到 URL 是 http://127.0.0.1/proxy/test.html