3

我无法与 tomcat 建立 ssl 连接。铬写道"107 (net::ERR_SSL_PROTOCOL_ERROR"。我已经通过 keytool.( >keytool -genkey -alias tomcat -keyalg RSA -keystore mystore -validity 999 -keysize 512) 生成了 mystore 文件并将其放到 D:\mystore 中。

也在我的 server.xml 中:

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="443"/>



<Connector port="443" SSLEnabled="true" maxHttpHeaderSize="8192" 
    maxThreads="150" minSpareThreads="25" maxSpareThreads="200"
    enableLookups="false" disableUploadTimeout="true"         
    acceptCount="100" scheme="https" secure="true"
    clientAuth="false" sslProtocol="TLS"
    keystoreFile="d:\mystore" keystorePass="123123" keystoreType="JKS"
    keyAlias="tomcat"/>

当我在日志中启动tomcat时存在这些字符串:

INFO: Starting ProtocolHandler ["http-bio-443"]
сен 05, 2012 9:00:29 AM org.apache.coyote.AbstractProtocol start

当我尝试 https://localhost/lib(或https://localhost:443/lib)时,没有任何效果。

有人可以帮助我吗?

PS:-apache-tomcat-7.0.29

-jdk1.7.0_5

固定的!

迁移到 apache-tomcat-7.0.28 ((((

4

4 回答 4

7

首先,您应该使用 8443(或另一个 8000+ 端口),443 是系统使用的默认端口之一(如 21 上的 FTP 等)。然后:你应该像这样修改你的 server.xml:

<Connector port=”8443” protocol=”org.apache.coyote.http11.Http11Protocol” SSLEnabled=”true”
       maxThreads=”200” scheme=”https” secure=”true”  keystoreFile=”D:/mystore/.keystore” keystorePass=”123123”
       clientAuth=”false” sslProtocol=”TLS” />

在 keystoreFile 选项中,您应该验证您的文件实际上命名为“.keystore”(当然不带括号)。如果您想尝试创建另一个:您应该这样做:

keytool –genkey –alias tomcat –keyalg RSA

您应该在 keystoreFile 中使用“反斜杠”、“\”而不是“/”。然后在您的应用程序服务器重新启动时,您应该尝试去

https://localhost:8443/

让我知道是否有帮助

于 2012-09-05T08:22:58.397 回答
2

我也遇到了同样的问题,但是升级tomcat后问题依然存在。我通过清除缓存和 cookie 解决了这个问题。

于 2015-11-16T06:44:18.817 回答
1

固定的!

迁移到 apache-tomcat-7.0.28 ((((

于 2014-09-12T13:35:04.740 回答
1

在您的连接器配置中包括“sslEnabledProtocols”这是一个示例

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" maxHttpHeaderSize="8192" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" disableUploadTimeout="true" acceptCount="100" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" sslEnabledProtocols="TLSv1,TLSv1.1,TLSv1.2" keystoreFile="" keystorePass="password" />
于 2018-04-20T19:34:31.443 回答