nginx 丢失端口

版权声明:solo https://blog.csdn.net/sansan_7957/article/details/83351671

记录一个bug

最近公司服务换成了nginx,配置完之后发现接口访问出错,有些接口的端口(不是默认接口)不见了。排查一通之后发现是因为有些接口结尾没有 /

具体原因在这里:nginx处理redirect location端口丢失的问题

拉到下面: 访问目录没带/

这个比较棘手,比如$document_root存在data/index.html文件,但是访问的时候最后没加/,nginx会自动给你带上/,返回一个301重定向(这个行为和apache一致),但是比较扯的地方在于,如果nginx监听的是非标准端口,这个301返回的Location没有端口号,导致浏览器请求出错。用curl可以很明显的看到这一点……

猜你喜欢

转载自blog.csdn.net/sansan_7957/article/details/83351671