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再进行测试就好了。
- 【Tomcat】Tomcat的安装配置,如何在NetBeans上创建tomcat服务器,以及关于tomcat端口被占用的解决办法
- 解决IIS配置HTTPS证书完成证书后刷新后证书消失问题
- IDEA配置tomcat完成后提示缺少JAVA_HOME 和 JRE_HOME
- 用tomcat配置https自签名证书,解决 ios7.1以上系统, 苹果inHouse发布
- 用tomcat配置https自签名证书,解决 ios7.1以上系统, 苹果inHouse发布
- 在Intellij IDEA中配置Tomcat服务器以及完成热部署
- tomcat开启https配置过程中的问题以及解决方法
- 用tomcat配置https自签名证书,解决 ios7.1以上系统, 苹果inHouse发布
- tomcat服务器https配置及证书生成(笔记)
- Tomcat服务器配置https认证(使用keytool生成证书)
- tomcat配置https的方法以及带有证书请求的实例
- Tomcat启用HTTPS(生成证书、配置Tomcat服务器)
- Tomcat服务器配置https双向认证(使用keytool生成证书)
- Eclipse中配置启动Tomcat服务器,以及错误及报错解决
- JavaWeb学习篇之----Tomcat中配置数字证书以及网络传输数据中的密码学知识
- 配置Tomcat服务器出现错误情况解决办法
- 如何配置IIS服务器使用的中间证书( 微软 KB954755)
- Tomcat服务器的安装以及安装的常见问题和Tomcat的配置
- AIX配置tomcat https的问题解决
- Tomcat端口占用解决办法及连接到localhost 提示:位于 XDB 的服务器 localhost 要求用户名和密码