1. 程式人生 > >Tomcat7配置支援https

Tomcat7配置支援https

前言

在前面CAS簡單小demo搭建中,我們是簡單搭建了一個基於CAS的小Demo。但是為了方便演示,我們就直接使用了http,而不是https,這樣是實際開發中肯定是不行的。因為在單點登入中使用者的登入資訊是肯定要得到保障的。否則這個單點登入可以說就是失敗的。要支援https就必要需要證書,我們在日常開發中刻意去證書機構顯然是不可能的。所以我們一般是利用jdk中自帶的keytool來生成證書,等到實際生產環境再去購買證書,下面我們就一起學習下,怎麼利用keytool去生成證書,以及如何在tomcat中配置支援https。

利用keytool生成證書

執行cmd命令,在視窗中執行

keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "d:\tomcat.keystore" 

接著會出現下面的介面,你需要填寫一些資訊

上面的資訊中需要記住是金鑰庫口令,這裡我輸入的金鑰庫口令是123456。後面在tomcat中的配置檔案中需要。上面執行成功之後,我們可以在D盤看到生成的tomcat.keystore,這樣證書就生成了。

開放tomcat中的https

在tomcat中找到的conf下的server.xml檔案,在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="org.apache.coyote.http11.Http11Protocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" 
			   keystoreFile="d:\tomcat.keystore"        keystorePass="123456"/>

上面的keystoreFile就是證書所在的目錄,keystorePass就是上面提到的金鑰庫口令,需要和上面設定的口令保持一致。

tomcat的配置檔案修改好之後,我們啟動tomcat,輸入地址會看到如下介面

可以在上面的詳情資訊中,選擇跳轉網址,就會出現tomcat的預設首頁

 

到這裡,tomcat支援https就算是搭建完成了,由於不是正規機構的證書 ,所以瀏覽器會報證書錯誤資訊。