2012-09-05 99 views
2

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

也在我的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((((

回答

1

修复!

迁移到Apache的Tomcat的7.0.28((((

6

首先,你应该使用8443(或其他端口8000+),443是系统使用的默认端口中的一个(如FTP 21等) 然后:你应该修改你的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/ 

让我知道如果可以帮助

+0

我仍然不知道为什么它不起作用,但我从7.0.29更改了tomcat到7.0.28,现在它工作 – Hlib

2

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