2012-09-16 63 views
1

我想強制所有用戶在我的應用程序的所有頁面使用SSL。我使用mavan 3和使用這個插件在行家:強制ssl在tomcat 7

 <plugin> 
      <groupId>org.apache.tomcat.maven</groupId> 
      <artifactId>tomcat7-maven-plugin</artifactId> 
      <version>2.0-SNAPSHOT</version> 
      <configuration> 
       <server>TomcatServer</server> 
       <httpsPort>8443</httpsPort> 
       <keystoreFile>-- My keystore path --</keystoreFile> 
       <keystorePass>-- My keystore pass --</keystorePass> 
       <path>/</path> 
      </configuration> 
     </plugin> 

在運行基於Maven的服務器(MVN tomcat7:運行),我的服務器日誌是這樣的:

... 
INFO: Initializing Spring root WebApplicationContext 
Sep 16, 2012 9:55:17 PM org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["http-bio-8080"] 
Sep 16, 2012 9:55:17 PM org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["http-bio-8443"] 

然而,當我使用https訪問該頁面,我在Chrome中收到SSL連接錯誤,並且「SSL收到的記錄超出了允許的最大長度。」在Firefox中。

1)我相信maven在戰爭中嵌入了Tomcat 7。所以,我沒有可以手動配置SSL的server.xml文件。我如何在我的pom.xml中配置SSL?

2)如何確保所有請求都被轉發到8443?

回答

3

我有一種感覺,「服務器」屬性可能會導致您的問題。根據Tomcat插件文檔,這不是一個選項。這是一個(很難找到的)Tomcat'run'命令的插件選項列表。 http://mojo.codehaus.org/tomcat-maven-plugin/run-mojo.html祝你好運。我有類似的問題,雖然不一樣。我希望這對你有用。