nginx-405post问题解决

Posted 腾信软创

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx-405post问题解决相关的知识,希望对你有一定的参考价值。

近日,遇到一个需求,希望通过nginx配置一个url,能够返回一个json,来实现app的一个功能。

于是,很简单的相当,在服务器放一个文件,用nginx代理一下,代码就写好了,代码如下

location ^~ /front3/versionsManager/getUpdateVersion.do {
alias /data/upload/getUpdateVersion.do;
}

 

后来发现,返回的是html,不是json,于是增加了返回类型

location ^~ /front3/versionsManager/getUpdateVersion.do {
default_type application/json;
alias /data/upload/getUpdateVersion.do;
}

 

再后来测试时候发现,客户端调用的时候

客户端用是方法是post,不是get,查阅多个资料修改如下

 

location ^~ /front3/versionsManager/getUpdateVersion.do {
default_type application/json;
alias /data/upload/getUpdateVersion.do;
error_page 405 =200 http://$host$request_uri;
}

当post请求nginx的location的时候,就会报405,于是在location中,增加了405异常的接受,首先,转成200,然后再次用get访问这个接口。

 

这种方式,只适用于没有任何内容的post请求,不然body的参数也会丢失。










以上是关于nginx-405post问题解决的主要内容,如果未能解决你的问题,请参考以下文章

一次405问题引发的思考

记一次nginx 405的错误

lumen+nginx+405 not allow +跨域

405不允许nginx,CORS? Nginx配置?或者是其他东西?

Vue初学,POST跨域问题怎么解决

jmeter post请求无法识别参数问题解决