nginx 前端及接口代理配置
以下为总结配置 我这一块配置为了习惯统一化 不管前端还是接口配置 location后面都带上斜杠。
前端代理配置
我比较常用的为alias方式
# 演示root和alias两种配置静态资源的区别 server { listen 80; server_name localhost; # 用root方式,location中的路径会拼加到root的地址后面 # 请求路径为:http://localhost:8080/files/index.jpg 实际访问为:/home/files/index.jpg location ~^/files/ { root /home/; index index.html index.htm; } # 用alias方式,location中的路径不会拼加到alias的地址后面 # 这请求路径为:http://localhost:8080/files/index.jpg 实际访问为:/home/index.jpg location ~^/files/ { alias /home/; index index.html index.htm; } }
后端代理配置
以下这种方式我用的比较多
# 请求路径为:http://127.0.0.1:8080/api/getUser 实际代理为:http://127.0.0.1:8000/getUser location ^~/api/ { proxy_pass http://127.0.0.1:8000/; proxy_set_header Host $http_host; #后台可以获取到完整的ip+端口号 proxy_set_header X-Real-IP $remote_addr; #后台可以获取到用户访问的真实ip地址 }
参考的相关配置方式