nginx将post请求转为了get请求问题分析

nginx将post请求转为了get请求问题分析

经验文章nimo972025-07-01 20:28:021A+A-

部署并配置nginx后,然后用postman工具测试,发送一个post请求,结果却返回400错误。

nginx配置如下所示:

location /nadminv/ {

proxy_pass http://localhost:8251/nadminv;

proxy_set_header HOST $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

作用是将请求转发到本地端口8251的http程序进行处理。

查看nginx日志,发现并没有错误日志,但access.log确实也产生了,说明post请求到达了nginx。奇怪的是,access.log中出现了两条记录,第一条post返回301错误码,紧接着收到同样的get请求,返回400。

其中301错误码为重定向,说明因为nginx的配置问题导致了发生重定向!

经过网上搜索解答,果然是配置问题,在location后的地址最后不用加斜线,即配置为:

location /nadminv {

proxy_pass http://localhost:8251/nadminv;

proxy_set_header HOST $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

重启nginx后再测试发送post指令,则最后请求正常。


nginx是最常用的代理/反向代理服务器,涉及它的配置还是挺多的,本文记录在日常使用中遇到的nginx问题,给自己总结,也希望对读者有所帮助。

点击这里复制本文地址 以上内容由nimo97整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

尼墨宝库 © All Rights Reserved.  蜀ICP备2024111239号-7