目前,查阅资料常用的解决方法如下: Nginx的405 not allowed错误解决 但不适用于我的情况。
本质原因
1.接口请求/api/users/到第一台服务器nginx,在80端口的server,转发到第二台服务器nginx的8083端口的server。 2.在第二台服务器nginx上,接口对应的路由/api/users/配置在nginx的80端口的server上,而不是8083端口的server上。 3.所以接口请求/api/users进来的时候,在第二台nginx的8083端口的server上,找不到对应的路由,刚好8083端口的默认路由是静态页面,所以导致405 not allowed错误
问题现象
原先用一层nginx代理的时候是正常的,用了两层nginx代理,导致使用post接口调用的时候,报错405 not allowed。
解决方案
在第二台nginx的8083端口的server上,配置上接口请求的路由。
感悟
具体问题,具体分析,别人的解决方案,不一定适合你。 先根据错误链条,一步步排查,定位到问题发生的原因,就能解决问题了。
参考:https://www.51969.com/post/18496416.html