2014-03-26 3 views
2

Tomcat 7을 사용하여 SSL을 구성하려고하지만이를 수행 할 수 없습니다. 안내해주십시오. SSL 인증서 생성Tomcat 7에서 SSL을 구성 할 수 없습니다

명령 :

C:\Java\jdk1.7.0_40\bin>keytool -genkeypair -alias tomcat-keystore -keyalg RSA -keystore C:\my.keystore 

의 server.xml을

<Connector port="8443" maxThreads="150" scheme="https" secure="true" SSLEnabled="true" 
    keystoreFile="C:\my.keystore" keystorePass="abc" 
    clientAuth="false" keyAlias="tomcat-keystore" sslProtocol="TLS"/> 

문제는 내가 https://wwww.secdevapp.net:8443를 넣어 경우 브라우저가 "웹 페이지를 사용할 수 없습니다"내가 오류를보고 말한다이다 catalina.log 파일 (아래 참조)에 있지만 http://www.secdevapp.net:8080이 정상적으로 작동합니다.

톰캣 오류 로그 :

Mar 26, 2014 11:22:04 AM org.apache.catalina.core.StandardService initInternal 
SEVERE: Failed to initialize connector [Connector[HTTP/1.1-8443]] 
org.apache.catalina.LifecycleException: Failed to initialize component [Connector[HTTP/1.1-8443]] 
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106) 
    at org.apache.catalina.core.StandardService.initInternal(StandardService.java:559) 
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102) 
    at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:813) 
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102) 
    at org.apache.catalina.startup.Catalina.load(Catalina.java:638) 
    at org.apache.catalina.startup.Catalina.load(Catalina.java:663) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:280) 
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:454) 
Caused by: org.apache.catalina.LifecycleException: Protocol handler initialization failed 
    at org.apache.catalina.connector.Connector.initInternal(Connector.java:980) 
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102) 
    ... 12 more 
Caused by: java.lang.Exception: Connector attribute SSLCertificateFile must be defined when using SSL with APR 
    at org.apache.tomcat.util.net.AprEndpoint.bind(AprEndpoint.java:467) 
    at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:640) 
    at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:434) 
    at org.apache.catalina.connector.Connector.initInternal(Connector.java:978) 
    ... 13 more 

답변

4

server.xml 줄의 APR 수신기를 주석 처리합니다. 27 Windows OS에서 트릭을 수행합니다. 해결책을 찾았습니다. http://java.dzone.com/articles/ssl-your-tomcat-7

APR은 Tomcat을 설치할 때 설치할 수있는 기본 라이브러리입니다. Tomcat을 OS에 연결하지만 뛰어난 확장 성과 성능을 제공합니다. 이는 프로덕션 환경에서 수행하는 것이 좋습니다. 다른 환경에서는 그 점을 보지 못합니다.

0
  • 확인 서버의 포트. tomcat/java가 실제로 포트 8443에서 수신 대기합니까?
  • 일반적으로 tomcat/logs 디렉토리에서 tomcat 로그를 확인하십시오. 액세스 로그 란 무엇입니까?
  • 해당 커넥터를 사용한 후에 tomcat을 다시 시작 했습니까? catalina.log는 무엇이라고 말합니까?
+0

방향에 따라 catalina.log에서 오류가 발견되었습니다. 원래 게시물에 오류 로그를 추가했습니다. 귀하의 다른 두 가지 질문에 대답 : 예, 나는 Tomcat을 다시 시작하고 나는 server.xml을 확인하고 Tomcat은 포트 8443에서 듣고있다. – user2325154

관련 문제