在apache-tomcat-7.0.33-windows-x64.zip配置https,結果在配置SSL時遇到一些問題
1、用JDK自帶的keytool來生成私有密鑰和自簽發的證書,如下:
keytool -genkey -alias sdtx -keyalg RSA -keystore d:/keys/sdtx.keystore
2、啟用Web服務器(Tomcat)的SSL,也就是HTTPS加密協議,准備好一個干凈的tomcat,本教程使用的apache-tomcat-7.0.33-windows-x64 打開tomcat目錄的conf/server.xml文件,開啟83和87行的注釋代碼,並設置keystoreFile、keystorePass修改結果如下:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="D:/test/sdtx.keystore" keystorePass="123456"/>
3、怎樣配置Java Web程序使用HTTPS
如果想要你的JavaEE Web程序使用HTTPS協議實現SSL通信,你需要在web.xml配置文件中添加:
<security-constraint> <web-resource-collection> <web-resource-name>app</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint>