2 xuwu168168 xuwu168168 于 2017.01.02 20:47 提问

Nginx http强制转https问题 1C

服务器挂证书 部分url强制https ,现在在nginx下post提交数据会丢失
图片说明

   location ^~ /v1/getPolicyNo/ {

        if ($scheme = http) {
        return  301 https://$host$request_uri;
  }
    proxy_pass http://locationtomcat; #不要这句提示一直重定向,加上正常https但是post提交数据丢失

  } 

   location / {
            proxy_redirect off; 
             proxy_connect_timeout 20;
             proxy_set_header Host $host; 
         proxy_set_header X-Real-IP $remote_addr; 
            proxy_set_header REMOTE-HOST $remote_addr; 
           proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto  $scheme;
             client_max_body_size 900m;
         proxy_pass http://locationTomcat;
        }

2个回答

caozhy
caozhy   Ds   Rxr 2017.01.02 20:44
Eyseem
Eyseem   2017.01.03 11:32

试试307,307是会把post的数据带到新的地址的,而301则会丢失。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
nginx 配置https 并兼容http 或强制http 转为https
当我们升级http 为https时,为了兼顾一些访问者还是通过http访问的方式,我们通常采用两种方式。第一种:http 可以访问,https也可以访问。 第二种:http 访问时,重定向到https。这里说下第一种方式。 server { listen 80; listen 443 ssl; server_name
Nginx配置http强制跳转到https
刚刚配置好https证书,可以实现访问,可是发现个问题输入网址直接是到http网站而非https,每次需要输入https那也真麻烦 用我自己的网站实验:http:fayne.cn 直接跳转到https://fayne.cn 步骤:修改/etc/nginx/nginx.conf server { listen 80; server_name fayne.
Nginx配置SSL并强制http跳转到https
配置信息如下 server { listen 80; server_name ssl.lanbing.org; rewrite ^/(.*) https://ssl.lanbing.org/$1 permanent; #关键代码 } server { listen 443; server_name ssl.lanbing.org; #serve
Nginx安装配置SSL证书并强制http跳转到https
申请免费https证书https://login.wosign.com/reg.html 先查看一下nginx是否有安装http_ssl_module,我这个是安装了https模块的,如果没有这个模块就需要nginx平滑升级添加ssl实现站内https。 可以参考http://www.open-open.com/lib/view/open1451624143370.html
nginx http跳转https
1、需求:当访问http时,自动跳转到https 2、环境:一个测试的nginx+静态页面 3、实现:写成两个配置文件一个叫test.conf内容如下: server { listen 80; server_name www.test.com; location / { rewrite ^/(.*) https://www.test.com; #当访问http时,重写到https上
Nginx Tomcat http 强制跳转https ssl crt key
user  www www; worker_processes auto; error_log  /home/wwwlogs/nginx_error.log  crit; pid        /usr/local/nginx/logs/nginx.pid; #Specifies the value for maximum file descriptors that can be open
【环境配置】申请StartSSL免费CA证书,配置Nginx使用https访问,强制http跳转到https
个人用户,可以选择免费的DV证书。 StartSSL的免费DV证书:有效期一年,可以续,也就是永久免费。 申请步骤: 1、https://startssl.com  注册,邮箱接收验证码,生成客户端证书,下载双击导入证书到浏览器。 2、重启浏览器,登录startssl.com,进入控制台,选择申请免费证书,验证域名网站所有权; 3、最多填入5个网站域名,比如:domain.com w
Nginx配置https,加重定向强制跳转
一、Nginx安装(略) 安装的时候需要注意加上 --with-http_ssl_module,因为http_ssl_module不属于Nginx的基本模块。 Nginx安装方法: 1 2 # ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_
解决Nginx+Tomcat下客户端https请求跳转成http的问题
Nginx上开启https,  后端使用Tomcat,  两者间走http协议, 但发现如果tomcat应用存在跳转时, 则客户端浏览器会出现400 Bad Request的错误, 通过抓包发现原因是302跳转响应的Location头中的URL是http协议的,  在tomcat的端号采用非标准80端口时会导致客户端出现400.  解决方案是修改nginx.conf, 让nginx将302跳转响应
centos7下基于nginx,http站点转换https
结构清晰,内容简洁,只要四步搞定centos下nginx上http到https的转换