生成安全证书
-
打开命令窗口
Windows键+r,输入cmd
-
切换当前目录到tomcat的conf目录下
-
生成证书
红色字体标识的参数按实际需要修改
keytool -genkey -alias tomcat -keyalg RSA -keystore E:\apache-tomcat-7.0.57\conf\tomcat.keystore -validity 36500 -keypass 123456 -storepass 123456 -dname "CN=localhost,ou=test,L=nanjing,ST=jiangsu,c=CN"
keytool -selfcert -alias tomcat -keystore tomcat.keystore
执行后会提示:输入密钥库口令:(输入上面的123456)
keytool -export -alias tomcat -keystore tomcat.keystore -storepass 123456 -rfc -file tomcat.cer
证书生成完毕。
修改tomcat配置文件
- 打开conf目录下的server.xml。修改证书路径和密码。
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort=""/>
<Connector SSLEnabled="true" clientAuth="false" keystoreFile="" maxThreads="150" port="" protocol="org.apache.coyote.http11.Http11Protocol" scheme="https" secure="true" sslProtocol="TLS"/>
2.在<tomcat>/conf/web.xml或者<tomcat>/webapps/<工程>/WEB-INF/web.xml配置那些url需要https访问
<security-constraint>
<web-resource-collection >
<web-resource-name >SSL</web-resource-name>
<url-pattern> /*</url-pattern> <-- 所有url都强制使用https-->
<url-pattern> /order/*</url-pattern> <-- 所有order目录下url都强制使用https-->
<url-pattern> /user/edityUser.do</url-pattern> <-- 单个页面强制使用https-->
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>