HTTP升级HTTPS全流程
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
1. 申请SSL证书
这个呢我是在 OHTTPS申请的泛域名证书这个有自动部署三个月自动申请一次不过需要你的云服务器的账号密码不大安全的样子还有的就是阿里云 腾讯云的单域名证书每个账号能申请20个好像如果是他们的服务器的话自动部署还好做一点。
OHTTPS申请SSL证书参考第二章链接
申请成功之后下载cert.key(私钥文件)
和 fullchain.cer(证书文件)
保存好备用
2. Nginx部署SSL
参考 nginx安装部署ssl证书 , 其他服务器请参考SSL配置生成
3. Springboot 开启支持SSL
Springboot 默认的容器是tomcat 支持的是jks的证书文件好像是jetty 也是支持的jks的这里需要进行格式转换 SSL证书格式转换
1. 转换证书文件
-
证书文件放
fullchain.cer
-
私钥文件放
cert.key
-
输入一个新文件密码
-
转换之后下载下来 假设是
_.abc.com.jks
2. 使用本地证书文件
如果使用本地证书文件的话需要配置一下
pom.xml
,防止maven打包的时候修改jks文件
- resources下创建cert文件夹将
_.abc.com.jks
复制到此文件夹 - 修改
pom.xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<nonFilteredFileExtensions>
<!-- 避免 https 证书文件被修改 -->
<nonFilteredFileExtension>jks</nonFilteredFileExtension>
</nonFilteredFileExtensions>
</configuration>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
- 修改配置文件添加SSL支持
server:
ssl:
enabled: true
key-store: classpath:cert/_.abc.com.jks # jks 文件路径
key-store-password: 123456 # 密码
key-store-type: JKS
3. 使用线上证书文件
- 将你的证书文件上传到OSS服务器然后复制外网链接
- 修改项目配置文件
server:
ssl:
enabled: true
key-store: https://cdn.**.net/_.abc.com.jks
key-store-password: 123456 # 密码
key-store-type: JKS
4. 验证是否成功
运行日志出现 https就OK了
2023-02-03 10:34:52.046 INFO 1600 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 9527 (https)
4. 前端修改
改不改都可以其实。 vue.config.js 修改 https
module.exports = {
devServer: {
// 生产环境开启 https
https: process.env.NODE_ENV === 'production'
},
}