文章原文:blog.ouyangsihai.cn >> Java後臺開發Tomcat添加https支持小程序開發過程
)html
注意:申請好了若是不是在騰訊註冊的域名,不會自動經過,須要手動驗證的,驗證方法以下:https://cloud.tencent.com/document/product/400/6814java
驗證成功以後,纔會給你下發證書。web
參考文檔:https://cloud.tencent.com/document/product/400/4143apache
www.domain.com
證書文件包到本地目錄。www.domain.com.jks
密鑰庫 keystorePass.txt
密碼文件(若已設置私鑰密碼,則無 keystorePass.txt
密碼文件) www.domain.com.csr
文件 > 說明:
>
> CSR 文件是申請證書時由您上傳或系統在線生成的,提供給 CA 機構。安裝時可忽略該文件。複製代碼
www.domain.com.jks
密鑰庫文件從本地目錄拷貝至 /usr/*/conf
目錄下。 /usr/*/conf
目錄下的 server.xml
文件。添加以下內容: <Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
keystoreFile="/usr/*/conf/www.domain.com.jks" #證書保存的路徑
keystorePass="******"#密鑰庫密碼
clientAuth="false"/>複製代碼
詳細 `server.xml` 文件請參考以下內容:複製代碼
<?xml version="1.0" encoding="UTF-8"?>
<Server port="8005" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.startup.VersionLoggerListener" />
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
<GlobalNamingResources>
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<Service name="Catalina">
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
<Connector port="443" protocol="HTTP/1.1"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false"
keystoreFile="/usr/*/conf/www.domain.com.jks"
keystorePass="******" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost=「www.domain.com">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>
<Host name=「www.domain.com" appBase="webapps"
unpackWARs="true" autoDeploy="true" >
<Context path="" docBase ="Knews" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
</Engine>
</Service>
</Server>複製代碼
配置文件的主要參數說明以下:
* **keystoreFile**:密鑰庫文件的存放位置,能夠指定絕對路徑,也能夠指定相對於 <CATALINA_HOME> (Tomcat安裝目錄)環境變量的相對路徑。若是此項沒有設定,默認狀況下,Tomcat 將從當前操做系統用戶的用戶目錄下讀取名爲 「.keystore」 的文件。
* **keystorePass**:密鑰庫密碼,指定 keystore 的密碼。申請證書時若設置了私鑰密碼,請填寫私鑰密碼;若申請證書時未設置私鑰密碼,請填寫 Tomcat 文件夾中 keystorePass.txt 文件的密碼。
* **clientAuth**:若是設爲 true,表示 Tomcat 要求全部的 SSL 客戶出示安全證書,對 SSL 客戶進行身份驗證。複製代碼
以後,從新啓動Tomat,便可完成!小程序
文章有不當之處,歡迎指正,若是喜歡微信閱讀,你也能夠關注個人微信公衆號:
好好學java
,獲取優質學習資源。tomcat