Java後臺開發Tomcat添加https支持小程序開發過程

文章原文:blog.ouyangsihai.cn >> Java後臺開發Tomcat添加https支持小程序開發過程
)html

1 給本身的域名申請證書

注意:申請好了若是不是在騰訊註冊的域名,不會自動經過,須要手動驗證的,驗證方法以下:https://cloud.tencent.com/document/product/400/6814java

驗證成功以後,纔會給你下發證書。web

2 給Tomcat安裝https證書

操做步驟

參考文檔:https://cloud.tencent.com/document/product/400/4143apache

證書安裝

  1. 已在 SSL 證書管理控制檯 中下載並解壓縮 www.domain.com 證書文件包到本地目錄。
    解壓縮後,可得到相關類型的證書文件。其中包含 Tomcat 文件夾和 CSR 文件:
    • 文件夾名稱:Tomcat
    • 文件夾內容
      • www.domain.com.jks 密鑰庫
      • keystorePass.txt 密碼文件(若已設置私鑰密碼,則無 keystorePass.txt 密碼文件)
    • CSR 文件內容www.domain.com.csr 文件
> 說明:
        > 
        > CSR 文件是申請證書時由您上傳或系統在線生成的,提供給 CA 機構。安裝時可忽略該文件。複製代碼
  1. 使用 「WinSCP」 (即本地與遠程計算機間的複製文件工具)登陸 Tomcat 服務器。
  2. 將已獲取到的 www.domain.com.jks 密鑰庫文件從本地目錄拷貝至 /usr/*/conf 目錄下。
  3. 遠程登陸 Tomcat 服務器。例如,使用 「PuTTY」 工具 登陸。
  4. 編輯在 /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

相關文章
相關標籤/搜索