nginx 配置https 并解决重定向后https协议变成了http的问题
Posted lvjijun
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx 配置https 并解决重定向后https协议变成了http的问题相关的知识,希望对你有一定的参考价值。
配置如下:
server
listen 80;
server_name localhost;
return 301 https://localhost$request_uri;
charset UTF-8;
location /
root html; # 这个是指定一个项目所在目录
index index.html index.htm; # 这个是指定首页的文件名
server
listen 80 default backlog=2048;
listen 443 ssl;
server_name localhost;
ssl_certificate buduhuisi.crt; # 这个是证书的crt文件所在目录
ssl_certificate_key buduhuisi.key; # 这个是证书key文件所在目录
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location /esgcc-oms
proxy_pass http://localhost:8080;
proxy_redirect http:// https://;
add_header Cache-Control no-store;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
location /
root html; # 这个是指定一个项目所在目录
index index.html index.htm; # 这个是指定首页的文件名
proxy_redirect http:// https:// 这个配置是解决重定向后https变成了http 的问题。
应用中配置:
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/pages/" />
<property name="suffix" value=".jsp" />
<property name="order" value="1" />
<property name="redirectHttp10Compatible" value="false" /> <!--重定向解决https 变成了http 的问题-->
</bean>
可以解决这个问题:
400 Bad Request: The plain HTTP request was sent to HTTPS port
以上是关于nginx 配置https 并解决重定向后https协议变成了http的问题的主要内容,如果未能解决你的问题,请参考以下文章