2012-09-16 32 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祝你好运。我有类似的问题,虽然不一样。我希望这对你有用。