如何使用Tomcat配置HTTPS?

时间:2016-01-21 18:59:11

标签: java tomcat https

我正在尝试将Tomcat配置为侦听端口443以获取HTTPS,但它不起作用。我没有登录localhost_access_log.*.txt文件,catalina.out没有错误。

这是我的server.xml文件:

<Connector port="80" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="443" />
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
           keystoreFile="/home/iis/.keystore" keystorePass="changeit"
           clientAuth="false" sslProtocol="TLS" />

<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="443" />

如何解决问题或在哪里可以找到更多信息?

我用这个命令生成我的密钥库:

$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA

2 个答案:

答案 0 :(得分:-1)

首先配置密钥库

"%JAVA_HOME%\bin\keytool" -genkey -alias tomcat -keyalg RSA

在server.xml中反映

"%JAVA_HOME%\bin\keytool" -genkey -alias tomcat -keyalg RSA
  -keystore \path\to\my\keystore

然后将连接器添加到server.xml文件

<!-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
<Connector
           protocol="org.apache.coyote.http11.Http11Protocol"
           port="8443" maxThreads="200"
           scheme="https" secure="true" SSLEnabled="true"
           keystoreFile="${user.home}/.keystore" keystorePass="changeit"
           clientAuth="false" sslProtocol="TLS"/>

答案 1 :(得分:-1)

问题是密钥库密码,您忘记在 | =Fields!DateUsed.Value ---------------------------+----------------------------- =Fields!Description.Value | =Sum(Fields!Usage.Value) 文件中设置密码。您必须在server.xml

中的https keystorePass="changeit"元素中将keystorePass="YOUR_KEYSTORE_PASSWORD"更改为Connector