nginx去掉前缀的方法 使用nginx反向代理时去掉匹配前缀的方法

最近遇到了同一个二级域名下同时配置多个项目的需求,且后端服务需要统一匹配api前缀,所以通过nginx的location配置解决该问题,接下来就通过这篇文章给各位读者讲解nginx在反向代理时如何去掉前缀的方法。

正常情况下:在nginx配置文件中中设置了 location /api/ 时 浏览器访问 /api/test 反向代理到后端服务后,后端服务接收到的url地址实际还是/api/test

需要实现的功能需求:访问url路径/api/test 经过nginx反向代理后,到达后端服务的实际url地址为/test。

那么就需要按照如下方法进行修改,首先需要打开nginx的conf配置文件,或者打开你引入的单独子配置文件。

以下是原nginx配置文件中location部分的配置内容:

location  ^~/api/ {
    proxy_pass http://localhost:12345;
}

将上述代码修改为如下nginx location代码:

location  ^~/api/ {
    proxy_pass http://localhost:12345/;
}

需要注意和修改的是:在proxy_pass的最后加一个/即可。

修改完成后执行 nginx -s reload 刷新nginx配置文件,然后打开浏览器测试即可。

必须要执行nginx -s reload后才会生效,或者kill掉nginx进程重新执行也是可以的。

经过这样修改后,你的nginx在你使用浏览器访问/api/test后,实际访问的后端服务url就是localhost:12345/test了。

  • 11
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无枫丶

谢谢老板!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值