2012-06-21 164 views
2

我最近從godaddy獲得了ssl證書。我創建密鑰庫正確,並把下面進入我的server.xml:啓用SSL啓動Tomcat時出錯

<Connector port="8443" protocol="org.apache.coyote.Http11Protocol" SSLEnabled="true" 
       maxThreads="200" scheme="https" secure="true" keystoreFile="C:\SSLCerts\mykeystore.keystore" keystorePass="password" 
       clientAuth="false" sslProtocol="TLS" /> 

我本來協議=「HTTP/1.1」,但我收到一個錯誤,指出keystoreFile和keystorePass沒有一個匹配值。這導致了端口8443上的綁定錯誤。我運行netstat並確保8443上沒有運行任何東西;做了一些谷歌搜索,發現解決這個問題,以改變協議,因爲它是上面。

補充說,更改後我收到以下錯誤:

SEVERE: Failed to start connector [Connector[org.apache.coyote.Http11Protocol-84 
43]] 
LifecycleException: service.getName(): "Catalina"; Protocol handler start fail 
ed: java.lang.NullPointerException 
     at org.apache.catalina.connector.Connector.start(Connector.java:1102) 
     at org.apache.catalina.core.StandardService.start(StandardService.java:5 
40) 
     at org.apache.catalina.core.StandardServer.start(StandardServer.java:754 
) 
     at org.apache.catalina.startup.Catalina.start(Catalina.java:595) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. 
java:39) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces 
sorImpl.java:25) 
     at java.lang.reflect.Method.invoke(Method.java:597) 
     at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) 
     at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) 
Jun 21, 2012 1:23:57 PM org.apache.coyote.ajp.AjpAprProtocol start 

沒有人有任何想法,需要,以解決這個做什麼?

+0

根據,如果協議是 「org.apache.coyote.http11.Http11Protocol」 代替?無論如何,它與「HTTP/1.1」一樣。 –

+0

對於原始問題,你是否嘗試過'keystoreFile =「C:\\ SSLCerts \\ mykeystore.keystore」'(閱讀:用「\\」替換每個「\」)? –

回答

3

protocol="org.apache.coyote.Http11Protocol"不是一個有效的協議。你想要protocol="org.apache.coyote.http11.Http11Protocol"。請注意您缺少的額外http11軟件包。

這可能會帶你回到這個問題與你的密鑰存儲。

+0

謝謝馬克。就是這樣。我複製它,並沒有意識到它錯過了包。 –