springboot项目配置阿里云ssl证书,http转https

11 篇文章 0 订阅
9 篇文章 0 订阅
环境:springboot项目 版本:1.5.8.realse
证书类型: .pfx
服务器:阿里云centos主机
  • 申请阿里云ssl证书,免费和贵的都有(或者自己用工具生成的证书用法一致)
  • 开放服务器443端口
  • 下载证书,将证书放到resource目录下
  • application.properties配置
#证书配置
server.ssl.key-store=classpath:xxxxx.pfx //配置证书路径
server.ssl.key-store-password=xxxx //证书密码
server.ssl.keyStoreType=PKCS12 //keyStoreType就填这个
server.port=443
  • 项目的入口类Application.java注入两个bean
	@Bean
	public EmbeddedServletContainerFactory servletContainer() {
	//springboot版本不同可能下面的类名会不同或者类的包路径会不同
		TomcatEmbeddedServletContainerFactory tomcat = new TomcatEmbeddedServletContainerFactory() {
			@Override
			protected void postProcessContext(Context context) {
				SecurityConstraint constraint = new SecurityConstraint();
				constraint.setUserConstraint("CONFIDENTIAL");
				SecurityCollection collection = new SecurityCollection();
				collection.addPattern("/*");
				constraint.addCollection(collection);
				context.addConstraint(constraint);
			}
		};
		tomcat.addAdditionalTomcatConnectors(httpConnector());
		return tomcat;
	}

	@Bean
	public Connector httpConnector() {
		Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
		connector.setScheme("http");
		//监听http的端口号
		connector.setPort(80);
		connector.setSecure(false);
		//监听到http的端口号后转向到的https的端口号
        System.out.println("监听到了80端口");
		connector.setRedirectPort(443);//这里的端口写成和配置文件一样的端口就Ok
		return connector;
	}
按上述步骤操作后就可以直接访问域名(不用加端口号)就可以转换成https了

例如: baidu.com➡️https://baidu.com
在这里插入图片描述

在这里插入图片描述

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值