首先是申請證書,可以用java自帶的keytool生成證書
語句如下:
keytool -genkey -alias tomcat -keyalg RSA -keystore /home/rainman/.keystore
沒有設置全局變量的話,也可以進入java的目錄,如
/usr/java/jdk1.6.0_04/bin/keytool -genkey -alias tomcat -keyalg RSA -keystore /home/rainman/.keystore
執行命令後會讓輸入證書信息
然後要配置tomcat,找到tomcat目錄/conf/server.xml文件
找到一下這段代碼
<!--
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
-->
取消註釋,並改爲
<Connector port="8443" protocol="HTTP/1.1"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="/home/rainman/.keystore" (keystore文件地址)
keystorePass="123456"/>(123456是我之前輸入的keystore密碼)
然後重新一下就可以通過https://ip:8443/url請求服務了
以上是本地和測試環境的https配置。如果希望能通過域名訪問,需要向相關機構申請https證書,就不是這樣隨隨便便的搞了
<1>首先在本地建立一個keystore文件,例
進入JAVA_HOME(jdk下的bin目錄) keytool -v -genkey -alias tomcat -keyalg RSA -keystore c:/tomcat.keystore
在其後輸入密碼,以及提及的信息。這樣就生成了一個keystore文件。
<2> 在服務器關閉的情況下在生成的servser工程下,找到server.xml文件,在其中尋找<Connector port="8443"……
將夾在上下的註釋去掉。(尋找Connector port="8443“是否還有其他,有則將其註釋掉)
<3>將keystore文件加載其中
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" keystoreFile="C:/tomcat.keystore" keystorePass="tomcat" sslProtocol="TLS" />
<4>重新啓動服務即可。
<5>在瀏覽器中輸入https://localhost:8443/yourproject/ 選擇導入證書即可