nginx 反向代理失败问题

新手上路,请多包涵

图片描述

这是请求的url

图片描述

这是nginx里的配置

图片描述

这是请求的结果,发现请求地址还是127.0.0.1 的,是哪里错了吗?

阅读 7.3k
4 个回答

location / {}这条规则,由于没加=限定为完全匹配,所以默认的模糊匹配生效,再加上它又在前边,优先级比/apis/这条要高,所以实际上apis那条规则永远也不会被命中。
解决也简单,既然你的重点在apis那条规则上,那干嘛把它放后边呢?配置时一般会把/放到最后,在其它规则都没命中时,才需要它保底的,放前边它就成截胡的了。

proxy的配置项只有一个?
其他配置呢?

你没搞明白什么是反向代理。另外你直接访问http://epc.epcooo.com:81/recommend.html?category=4是404吗?我看配置好像是没问题的其他几个老哥说的对,nginx是从上到下匹配的,越上面优先级越高,你把//apis/的位置对调一下应该就行了

location 后面匹配的优先级 ,如果你server_name localhost, 而且后面的location / 或者 /apis/ 这样,会先从第一个入手去查找的,不管你怎么写url 因为都是模糊匹配,如果你想要匹配到apis ,那就 location = /apis/ 这样就好了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题