Tomcat配置多个证书

发布时间:2021/09/30 08:57:15

分类:Java


前言

我们都知道,Tomcat是服务器软件。Tomcat可以实现在一台服务器配置多个虚拟主机。

但是,这也会带来一个问题:如果服务器配置了多个网站,但只配置了一个网站的证书,就会出现以下问题:


可能你在服务器安装的证书只支持一个域名。这样就会导致浏览器报错,并提示不安全。当访客不了解情况的情况下,会认为你的网站不安全,从而不访问你的网站。

那如何解决此问题?

1.Tomcat 8.5以上:可配置多个证书

注意!Tomcat版本必须在8.5以上。8.5以下是不支持SNI(Server Name Indication)的。8.5以下请使用Nginx反向代理。

需要在配置文件server.xml这样写:

<Connector
    protocol="org.apache.coyote.http11.Http11NioProtocol"
    port="443"
    maxThreads="150"
    SSLEnabled="true"
	defaultSSLHostConfigName="*.amekiri.com">
    <!--必须设置默认主机名-->
	<SSLHostConfig hostName="*.amekiri.com">
    <Certificate
      certificateKeystoreFile="证书1路径"
      certificateKeystorePassword="证书1的密码"
      clientAuth="false"
      sslProtocol="TLS"
      type="RSA"
      />
    </SSLHostConfig>
    <SSLHostConfig hostName="kirilab.xyz">
    <Certificate
      certificateKeystoreFile="证书2路径"
      certificateKeystorePassword="证书2的密码"
      clientAuth="false"
      sslProtocol="TLS"
      type="RSA"
      />
    </SSLHostConfig>
</Connector>

关于Amekiri

GitHub

Twitter

Instagram

YouTube

Steam

Twitch