从阿里云购买免费SSL证书之后部署到Tomcat以支持https

首先按照阿里云的免费SSL证书然后按要求验证和下载,没有什么大坑,需要注意的是
① 我选择的是文件验证,因为我不是在阿里云买的服务器和域名,需要在tomcat/webapps目录下新建文件夹.well-known,注意前面有个点.,这个文件夹是隐藏的,直接cd进去,再建一个文件夹pki-validation,把文件上传上去,然后再继续验证。
② 每次下载都会产生新密码,该密码仅匹配本次下载的证书。如果需要更新证书文件,同时也要更新密码。
在这里插入图片描述
然后就是按照说明来部署证书,有两种安装方法,PFX证书安装和JKS证书安装。这里直接使用的是PFX证书安装。
拷贝“你的证书.pfx”到tomcat/conf目录下,然后打开server.xml文件,找到Connector port=“8443”,发现是注释的,不用管,直接在旁边粘贴以下代码:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" keystoreType="PKCS12" keystoreFile="conf/你的证书.pfx" keystorePass="你的密钥" />

以上文件,我建议你直接替换“你的证书”和“你的密钥”,其他一个标点符号都不要动!注意!!!我指的是一个标点符号都不要动,因为我已经测试通过了的(历经千辛万苦,中间各种坑),除非你确定你加的东西是对项目有用且可行的。然后重启tomcat就可以了。

有同学问,你为什么不把Connector port="8443"改为SSL的默认443端口,然后更改其他redirectPort为443,因为我这个服务器的443端口已经被占用了(SS),尴尬,中间还折腾了一番才找出原因。所以我这里访问还是要带端口号,如:https://www.shuiliu520.com:8443
提示如:
在这里插入图片描述

如果你发现部署到服务器之后,能访问http,不能访问https,那么不要犹豫了,直接用你的证书在本地电脑localhost测试通过再部署到服务器,因为本地调试方便得多,如修改tomcat/bin/catalina.bat文件,以暂停tomcat的窗口,不至于出错之后一闪而退,可以很清晰看出错误信息,不影响现有的项目运行,出错也没关系,重新弄一个本地tomcat就可以了。

猜你喜欢

转载自blog.csdn.net/ithouse/article/details/100588517