**完成在linux上 给tomcat进行配置 使项目可以使用https访问
https与http相比,进行访问会安全许多,同时,在一些平台下开发需要使用https的前缀作为接口链接,所以本文具有一定记录的价值。**
大部分教程使用的是,使用jdk自带的命令进行设置,经过实验,可以成功使用https访问,但是,大部分浏览器下(作者使用谷歌浏览器)会出现提示不安全的问题。如果你是个稍有强迫症,完美主义,或者对出现不安全字样反感的人,就可以跟随下面的步骤进行设置了。
这里推荐使用 阿里云提供的免费证书 申请渠道进行申请, 传送门 申请链接
进入后,选择 免费版 按照步骤进行申请即可
因为本文作者先前已经申请过一个证书,难度不大,如有需要,查找相关帖子进行申请即可。年过许久,记不清是否需要先申请域名,如果需要先购买域名的话,需要对购买的域名先进行备案,备案完毕后进行申请即可。 一个阿里云帐号可以申请25个免费的SSL证书,单个有效期一年
对Linux的Tomcat进行相关配置
首先
进入到tomcat的conf文件夹,编辑server.xml文件
习惯性使然,将其没注释的 <Connector port="8080"... 开头的8080端口改成80端口,对应那一块末尾的8443改为443
[解释: 80为默认端口 可以使用 http://.... ,即可直接访问项目,无需带之前的8080]
其次
增加下方配置
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" keystoreFile="/usr/local/key/tomcatKey/xxx.pfx" keystorePass="xxx" clientAuth="false" sslProtocol="TLS"/>
上述配置 可以复制过去使用 ,需要 注意 的是
keystoreFile 为 SSL证书放的文件地址 例中放的位置是 /usr/local/key/tomcatKey/下
keystorePass 里填写为 下载文件中txt的字符串 即 密码
xxx对应填写即可
**经过以上设置,重新启动Tomcat,即可不带端口号(8080等)用http://xxxx访问项目,也可以使用https://xxxx访问项目。但是,如果我们不打全 以xxxx(ip地址或者域名)直接访问的时候,他默认使用的是http协议的链接,这就很不舒服,所以下面,进行最后一步,**让http链接,自动跳转到https!**
同样的,进入Tomcat文件夹下的conf编辑web.xml文件 在其最后增加这段即可 <welcome-file-list> <welcome-file>/</welcome-file> </welcome-file-list> <security-constraint> <web-resource-collection> <web-resource-name>sslwebsokect</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint>
总结:
本文结束。
记载于 2019年9月19日 15:01:48