场景描述
系统原域名为http访问,现在需要改为https进行访问。
解决方案
经常查资料,现决定采用nginx对接https的方式,实现过程如下所示:
1、阿里云账户申请CA认证证书,购买免费证书
填写之后,第一图中列表新增一个需要补全信息的CA认证信息,点击补全;填写过程中,
填写之后,等待系统自动审核,一般5-10分钟,该过程没有人工参与,如果1个小时都没有通过,可能填写内容有问题,撤销重新检查。审核通过之后,在第一图列表中下载证书,同时在万网域名管理的地方会自动添加一条域名信息,不需要管他,然后把我们的域名指向我们的服务器。
2、Nginx中配置信息
阿里云提供了nginx信息配置,但我按照阿里云的配置之后,感觉不太够,跟我们的工程结合后如下配置
同时在步骤一种下载的两个文件需要放在nginx的conf目录下新建一个cert的文件夹,然后放入,将名字复制到nginx.conf的配置文件中,重启nginx。
ssl_certificate cert/214305330***.pem;
ssl_certificate_key cert/2143053***.key;
3、项目配置
我们的项目是SpringBoot框架的,需要在yml配置文件中配置如下信息
server:
port: 8061
tomcat:
protocol-header: x-forwarded-for
protocol-header-https-value: https
use-forward-headers: true
完成上述三部之后,重启项目,在网址上输入地址,发现不正确,需要强制刷新下浏览器或者清除下缓存,如果还不行,再等一会儿就ok了,跟我采用一样方式的不行的可以留言我,其他方式的自己查资料吧~