Spring Boot Undertow https 升级完整记录

前言
any-video 发布到 Github 三个月的时间,已经有300星了,感谢各位的支持。此项目纯属个人兴趣所开发,尝试所有新的技术,边学边用。今天演示站点升级 https,记录下升级过程。
演示地址:https://www.ictgu.cn

升级 https 记录
1、去阿里云购买证书(免费版),并提交审核资料

2、下载证书

3、查看上图页面的第三步

4、在证书目录下执行阿里云提供的命令,密码都填 pfx-password.txt 中的内容(三次),会生成 your-name.jks 文件。

此处我已改名为 any.jks
5、将 any.jks 复制到 spring boot 应用的 resources 目录下

6、在 application.yml 中配置证书及端口,密码填写第四步中的密码

此配置会使 Undertow 容器监听 443 端口,那么只有在域名前添加 https:// 才能访问网站内容,添加 http:// 则不行,所以需要让 Undertow 容器监听 80 端口,并将 80 端口的所有请求重定向到 443 端口,即完成 http 到 https 的跳转。
7、添加 SslConfig.java ,配置 Undertow 监听 80 端口。
[code]@Configuration
public class SslConfig {

@Bean
public EmbeddedServletContainerFactory servletContainer() {

UndertowEmbeddedServletContainerFactory undertowFactory = new UndertowEmbeddedServletContainerFactory();
undertowFactory.addBuilderCustomizers(new UndertowBuilderCustomizer() {

@Override
public void customize(Undertow.Builder builder) {
builder.addHttpListener(80, "0.0.0.0");
}

});
return undertowFactory;
}

}
[/code]
8、在 Spring Security 中配置 80 端口到 443 端口的映射

至此,重新打包应用,重新发布应用,即完成了 http 到 https 的升级, https 能让网站更安全,有兴趣的试试吧。Any 系列开源说明
Any-Video :Spring Boot 最佳实战
Any-Chat :基于 websocket 的 web 即时通信
any-spring-security :简单易懂的 Spring Security 实战 Demo关键词
Spring Boot、Undertow、mybatis、hackriCP
websocket、https、jsoup、Spring Security

5 个评论

哎哟,不错哦~
不错哦,赞赞赞
这css和js完全没有有原生的,只能仰望,无法超越哦
7、添加 SslConfig.java ,配置 Undertow 监听 80 端口。
==========================================
第7步可以去掉了。
使用spring boot,tomcat 亲测不需要
这个证书怎么申请?阿里云说提交审核,在哪里哦。。

要回复文章请先登录注册