nginx http自动跳转https post参数丢失问题

原创
2017/08/18 13:50
阅读数 3.4K

nginx

引子

 Nginx配置如下

 server {
        listen       80;
        server_name  www.xxx.com;
        rewrite ^(.*)$ https://$host$1 permanent;    
        location / {
            proxy_pass http://127.0.0.1:8081;
            root   html;
            index  index.html index.htm;

    .... ....
}

所遇情况

1. 通过HttpClient请求,就一直返回** 301 moved permanently **状态码。

2. 通过JS的ajax请求,有时候返回** 301**,有时候又正常, 并且我JS明明是** POST **请求,但是服务器打印出来的日志硬显示的是** GET **请求。

原因

浏览器请求服务器的时候,请求http地址,首先依旧是会获得到 301 状态码,但是浏览器会再次转换成 https 请求,但是这个过程中,会把 post 中的参数(即java中 inputStream())丢失

解决办法

没有更好的解决办法,直接请求https地址。。。

My Blog

blog.guijianpan.com

技术交流

展开阅读全文
打赏
0
0 收藏
分享
加载中
yzChen233博主

引用来自“benben_000”的评论

晕小伙子不要误导别人. 更改NGINX参数也行的

@benben_000 那还请您把解决方案详细说一下,给大家解惑��
2018/08/08 18:31
回复
举报
晕小伙子不要误导别人. 更改NGINX参数也行的
2018/08/08 14:00
回复
举报
更多评论
打赏
2 评论
0 收藏
0
分享
返回顶部
顶部