我想强制所有用户对我的应用程序中的所有页面使用 SSL。我正在使用 mavan 3 并在 maven 中使用了这个插件:
<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:run) 运行服务器时,我的服务器日志如下所示:
...
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 收到了超出最大允许长度的记录”。在火狐中。
1)我相信maven在战争中嵌入了Tomcat 7。因此,没有可以手动配置 SSL 的 server.xml 文件。如何在我的 pom.xml 中配置 SSL?
2) 如何确保所有请求都转发到 8443?