Nginx配置接口代理去除前缀
前端项目在使用nginx做接口反向代理时,有时候需要根据不同的接口前缀将请求代理到不同的服务器,但是真实的接口请求中又要去掉这个前缀。此时配置主要有两种写法 。
方法一:在地址后面加/
1
2
3
4
5server {
location ^~/api/ {
proxy_pass http://127.0.0.1:8080/;
}
}^~/api/
表示请求前缀是api
的请求,proxy_pass
最后加上/
,就会把api
去除,比 如请求的地址是api/test
,则代理发出的请求是http://127.0.0.1:8080/test
方法二:rewrite
1
2
3
4
5
6server {
location ^~/api/ {
rewrite ^/api/(.*)$ /$1 break;
proxy_pass http://127.0.0.1:8080;
}
}使用rewrite重写了url。注意:proxy_pass后不需要加/
__END__
文章作者:Live For Code
文章出处:Nginx接口代理去除前缀
作者签名:简单地活着, 肆意又精彩.
关于主题:Hexo - Live For Code
版权声明:文章除特别声明外,均采用 BY-NC-SA 许可协议,转载请注明出处
文章出处:Nginx接口代理去除前缀
作者签名:简单地活着, 肆意又精彩.
关于主题:Hexo - Live For Code
版权声明:文章除特别声明外,均采用 BY-NC-SA 许可协议,转载请注明出处