首先我先羅列一下前提
1、我的域名是xiangjiakang.cn -騰訊買的
2、我的服務器是阿里買的
3、ssl證書是阿里免費送的(https就靠這個證書!)
4、然后我先說明一下:我看了許多許多博客和阿里的幫助文檔,按我的做一定會成功。(他們都沒說特別明白,甚至有人長篇大論,惡心人)
5、不懂的加QQ群:950855473 幫助更多的人,同時希望認識更多的優秀朋友。
我既然講了這個,那你一定是具備了一台服務器和域名了,並且你已經備案成功,發布了自己的網站了,只不過是http的。
第一步:拿下SSL證書
1、去阿里直接搜索 ssl

2、點擊購買證書-選擇免費版的(填寫基本信息,提交審核前你需要 看3、域名解析)
3、

按阿里提出的要求,對應的字段填上對應的值,像這樣

然后你就審核通過了,回到頁面,馬上把你的證書綁定上你自己的域名即可
4、下載你的證書,把文件放到服務器上去(在tomcat目錄下新建一個文件夾 cert )
第二步:配置web.xml和server.xml(這兩個文件都在tomcat的conf目錄里) (win和linux一樣)
1、配置web.xml (滾動到最下面!粘貼到</web-app>這個標簽的上面,目的是http的請求自動跳轉到https)
<security-constraint> <web-resource-collection > <web-resource-name >SSL</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint>
2、配置server.xml
2.1、修改默認8080端口為80(80端口就不用寫端口號了,瀏覽器默認80,443是https的的端口) win和linux一樣
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
#找到以上參數,去掉<!- - 和 - ->這對注釋符並修改為如下參數,對HTTPS默認端口進行配置:
<Connector port="80" protocol="HTTP/1.1" #將Connector port修改為80。
connectionTimeout="20000"
redirectPort="443" /> #將redirectPort修改為SSL默認端口443,讓HTTPS請求轉發到443端口。
2.2、配置證書相關信息
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="cert/keystore.pfx" certificateKeystorePassword="XXXXXXX" certificateKeystoreType="PKCS12" />
#找到以上參數,去掉<!- - 和 - ->這對注釋符並修改為如下參數:
<Connector port="443" #將Tomcat中默認的HTTPS端口Connector port 8443修改為443。8443端口不可通過域名直接訪問、需要在域名后加上端口號;443端口是HTTPS的默認端口,可通過域名直接訪問,無需在域名后加端口號。 protocol="org.apache.coyote.http11.Http11NioProtocol" #server.xml文件中Connector port有兩種運行模式(NIO和APR),請選擇NIO模式(也就是protocol="org.apache.coyote.http11.Http11NioProtocol")這一段進行配置。 maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="/usr/local/tomcat/cert/證書域名.pfx" #此處certificateKeystoreFile代表證書文件的路徑,請用您證書的路徑+文件名替換證書域名.pfx,例如:certificateKeystoreFile="/usr/local/tomcat/cert/abc.com.pfx" certificateKeystorePassword="證書密碼" #此處certificateKeystorePassword為SSL證書的密碼,請用您證書密碼文件pfx-password.txt中的密碼替換,例如:certificateKeystorePassword="bMNML1Df" certificateKeystoreType="PKCS12" /> #證書類型為PFX格式時,certificateKeystoreType修改為PKCS12。
</SSLHostConfig>
</Connector>
3、重啟服務器,ok了
