2012年10月1日 星期一

安裝 Tomcat 5.5.x

安裝 Tomcat 5.5.x

This document is provided as is. You are welcomed to use it for non-commercial purpose.
Written by: 國立中興大學資管系呂瑞麟
請勿轉貼
看其他教材

支援一般連線

Tomcat 是一個讓開發者能夠執行 JSP/servlet 的伺服器(比較專業的說法是 container),其安裝步驟如下:
  1. 安裝 JDK 1.5.x 版或者更新的版本。
    • 記得要設定環境變數 JAVA_HOME。假設 JDK 安裝在 c:\jdk,我們需要執行 set JAVA_HOME=c:\jdk或者在控制台內設定。
  2. 安裝 Tomcat(我們以 5.5.x 版為例;並假設 Tomcat 安裝於 d:\tomcat)。下列 的設定不適用於 Tomcat 6.x 或者 Ttomcat 7.x 版。
    1. 下載點 http://tomcat.apache.org/download-55.cgi
    2. 請下載 zip 檔並將它解壓縮到 d:\
    3. 為了減少 typing,將目錄名稱從 apache-tomcat-5.5.x 改成 tomcat 
    4. 為了測試方便,我們建議將 d:\tomcat\conf\context.xml 這個檔案內的 <Context> 改成 <Context reloadable="true">
    5. 為了能使用 servlet,請修改 d:\tomcat\conf\web.xml,將下列設定的註解 刪除掉:
        <servlet>
          <servlet-name>invoker</servlet-name>
          <servlet-class>org.apache.catalina.servlets.InvokerServlet</servlet-class>
          ...
        </servlet>
        ...
        <servlet-mapping>
          <servlet-name>invoker</servlet-name>
          <url-pattern>/servlet/*</url-pattern>
        </servlet-mapping>
        
      上述兩項設定的大概意思是:如果瀏覽器傳過來 URL 的最後面包含 /servlet/任意servlet名稱(即 url-pattern 的設定,其中 * 代表 任意servlet名稱),Tomcat 就會把工作交給名稱為 invoker 的程式負責(即 servlet-name),而 invoker 實際上是 org.apache.catalina.servlets.InvokerServlet 類別。
    6. 假設我們要建立一個新的專案,其名稱為 xml,請在 d:\tomcat\webapps 建立一個目錄 d:\tomcat\webapps\xml,並在 d:\tomcat\webapps\xml 下建立 d:\tomcat\webapps\xml\WEB-INF 以及 d:\tomcat\webapps\xml\WEB-INF\classes
  3. 開啟”命令提示字元”,並 cd 到 d:\tomcat\bin;執行 .\startup.bat,你將會看到一連串的訊息,執行的畫面類似下圖:
  4. 開啟你喜歡的瀏覽器,並輸入 http://127.0.0.1:8080/。如果你的結果如下圖,表示你的安裝成功;你也可以在進一步測試一下 tomcat 提供的 JSP 和 servlet 的範例。


支援安全連線

許多資訊系統往往要求比較高的安全強度,其中一項就是希望能夠在連線的 過程,彼此交換的資料都能夠以加密的方式來進行;也就是使用 https。 tomcat 也支援 https,而且設定的方式也很簡單。如果要使得 tomcat 支援安全連線, 請先確認你已經依據上一節的內容完成 tomcat 的基本安裝。 要進行 https 連線之前,tomcat(或者其他的網頁伺服器)都需要 一個電子憑證;電子憑證的目的主要是希望能夠經由公正的第三者來證明"你就是 你說的你"或者"使用者連過去的公司真的就是那家公司"。如果你開發的系統 是給一個正式的機構,那麼我們建議你去申請一個電子憑證,例如:VerySign 等公司。 如果你只是想測試一下,那麼你可以建立自己的電子憑證,只不過你的使用者 可能會怕怕的,我們等一下以圖片說明。
為 tomcat 產生電子憑證,以及利用瀏覽器來使用 https 的方式如下:
  1. 產生電子憑證:請開啟"命令提示字元"視窗,並依照以下畫面來執行:
    密碼的長度要求至少 6 位。預設的情形下,該電子憑證(.keystore)的有效期間 是 3 個月;你可以加長,假設你想加長為 365 天,請在指令最後加上 -validity 365即可。
  2. 請將 .keystore 檔放置於 tomcat 的目錄;在本範例中,請放在 d:\tomcat
  3. 請修改 d:\tomcat\conf\server.xml 的內容。利用編輯器 (例如記事本之類的工具)開啟檔案,並找尋如下的部分:
        <!-- Define a SSL HTTP/1.1 Connector on port 8443 -->
        <!--
        <Connector port="8443" maxHttpHeaderSize="8192"
                   maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
                   enableLookups="false" disableUploadTimeout="true"
                   acceptCount="100" scheme="https" secure="true"
                   clientAuth="false" sslProtocol="TLS" />
        -->
    
    首先,將 Connector 標籤前後的註解刪除掉;然後,依據下列 綠色的部分加到 server.xml 中。其中,passwd 必須與你之前產生 電子憑證時的密碼相同。修改後的 server.xml 如下所示:

        <!-- Define a SSL HTTP/1.1 Connector on port 8443 -->
        <Connector port="8443" maxHttpHeaderSize="8192"
                   maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
                   enableLookups="false" disableUploadTimeout="true"
                   acceptCount="100" scheme="https" secure="true"
                   clientAuth="false" sslProtocol="TLS" 
                   keystoreFile=".keystore" keystorePass="passwd" />
    
  4. 以上步驟完成後,請重新啟動 tomcat。






我們要如何確認之前的設定是正確的呢?這時候,請使用你的瀏覽器去看 tomcat 的首頁,只是這次請輸入 https://localhost:8443/; 請注意:要輸入 https 而不是 http;另外,port 也要輸入 8443 而不是 8080

  1. 如果你的瀏覽器是 Firefox,那麼你會看到如下的畫面:
  2. 你可以點選"技術細節"或者"我了解此安全風險",兩個都點選的話,畫面 如下所示:
  3. 由於我們知道這是可以信任的網站(我們自己開發的,不是嗎?),所以 請點選畫面底下的"新增例外網站"。點選後,會出現以下的視窗:
  4. 你可以點選"檢視"按鈕,點選後,會出現以下視窗:
    你可以檢查一下內容。如果沒問題就可以點選"關閉"按鈕來關閉這個視窗。
  5. 最後,請點選"確認安全例外"按鈕。你就可以看到 tomcat 的歡迎畫面。









  1. 如果你使用的是 IE,以 IE8 為例,你會看到如下的畫面:
  2. 請點選"繼續瀏覽此網站(不建議)"來繼續,你會看到如下的畫面:
  3. 如果想要知道電子憑證的內容,請點選 IE8 位於上方中央的地方,有一個 "憑證錯誤"的紅色區塊,點選後,請選擇"檢視憑證",你會看到如下的畫面:
  4. 你如果希望下一次再造訪這個網頁而不想出現警告訊息的話,請在視窗上 點選"安裝憑證"的按鈕,然後依照指示完成憑證的安裝。





Written by: 國立中興大學資管系呂瑞麟






2 則留言:

  1. 請問要怎麼 cd 到 d:\tomcat\bin? 謝謝!!

    回覆刪除
  2. 你必須先開啟“命令提示字元”視窗,然後在該視窗內,輸入兩個指令:d: 以及 cd \tomcat\bin。建議 Google 一下“dos 指令”,例如 http://www.slime.com.tw/nctu/teach/neto/teach/dos.htm

    回覆刪除