tomcat配置https以及配置完成后提示服务器缺少中…
2019-08-16 10:37:13来源:博客园 阅读 ()
tomcat配置https以及配置完成后提示服务器缺少中间证书(已解决)
tomcat配置https
准备工作
下载好证书文件,下载的时候可以选择为tomcat文件。我这下载下来是压缩包。解压后就是下图的样子。
以.key结尾的文件是证书的key
以.pem结尾的文件是证书文件
第一步
在Tomcat的目录下,创建一个文件夹,我这文件名是cert,将下载好的证书解压后复制到这个文件夹里面。Tomcat支持PFX格式和JKS两种格式的证书,您可根据您Tomcat的版本择其中一种格式的证书安装到Tomcat上。很明显我下载下来的文件都不包含以上两种文件,所以需要我们自己转为pfx文件或者jks文件,这两种文件都支持,选其一即可。
到cert目录下执行如下命令完成PFX格式转换命令,此处要设置PFX证书密码,请牢记:
openssl pkcs12 -export -out 2424966.pfx -inkey 2424966.key -in 2424966.pem
其中的文件名可以自定义。
这个命令执行完成后可以生成.pfx文件。
第二步
找到安装Tomcat目录下该文件server.xml,一般默认路径都是在 conf 文件夹中。找到 <Connection port="xxx"标签,增加如下属性,完整的配置如下:(其中port属性请根据您的实际情况修改)
<Connector port="443"
protocol="HTTP/1.1"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile="cert/domain name.pfx" #此处keystoreFile代表证书文件的路径,请用您证书的文件名替换。
keystoreType="PKCS12"
keystorePass="证书密码" #请用您证书密码文件中的密码替换“证书密码”。
clientAuth="false"
SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"/>
配置完成后重启tomcat,然后访问域名进行测试。
jks格式的证书配置方式
使用java jdk将PFX格式证书转换为JKS格式证书(windows环境注意在%JAVA_HOME%/jdk/bin目录下执行)
keytool -importkeystore -srckeystore 2424966.pfx -destkeystore your-name.jks -srcstoretype PKCS12 -deststoretype JKS
回车后输入JKS证书密码和PFX证书密码,强烈推荐将JKS密码与PFX证书密码相同,否则可能会导致Tomcat启动失败。(上面命令中的文件名改为自己的即可)
tomcat配置文件server.xml的写法参考如下:
<Connector port="443"
protocol="HTTP/1.1"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile="cert/domain name.jks" #此处keystoreFile代表证书文件的路径,请用您证书的文件名替换domain name。
keystoreType="PKCS12"
keystorePass="证书密码" #请用您证书密码文件中的密码替换“证书密码”。
clientAuth="false"
SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"/>
更改完成后保存,重启tomcat进行测试即可。
进行证书检测的时候提示服务器缺少中间证书的解决办法
可以先去这个网站检测一下配置的https https://www.myssl.cn/tools/check-server-cert.html我这遇到的问题是,网址访问没问题,但是放到微信小程序后台服务上,当小程序访问的时候会出现问题,原因就是服务器缺少中间证书。在安卓环境会出现这种情况,但是在苹果就没有,但是还是得解决啊。解决办法就是在https://www.myssl.cn/tools/downloadchain.html这个网站上按照要求去生成一个中间证书,然后将生成的中间证书的内容粘贴到之前下载好的证书的文件里面。然后按照之前配置https的方法再重新配置一次。然后重启tomcat再进行测试就好了。
原文链接:https://www.cnblogs.com/jungejava/p/11208249.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:HashMap源码分析(二):看完彻底了解HashMap
下一篇:连接池简单介绍
- springboot2配置JavaMelody与springMVC配置JavaMelody 2020-06-11
- nacos~配置中心功能~springboot的支持 2020-06-10
- Maven安装与配置 2020-06-09
- java环境教程:Tomcat下载,安装,设置为Windows服务,启动 2020-06-09
- Spring Boot 实现配置文件加解密原理 2020-06-08
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash