2011年5月20日 星期五

心得 Apache 整合Tomcat

搜尋一下網路可以找到很多方法 ,不過試了很多都是不出來,不過最後總算找到一個方法

我設的環境很簡單, 試採用 WAMP 2.1 ( 含 apache2.2.17 )+ Tomcat 7.0

首先先下載這些東西

  1. jdk ( 有的話就不用重新下載)
  2. WAMP
  3. Tomcat( 我是選 32-bit/64-bit Windows Service Installer (pgp, md5),安裝後顯示在工作列,個人認為比較好管理 )
  4. tomcat-connectors 的 so 檔 ( 隨apache 版本有不同的設定,這裡選用 mod_jk-1.2.31-httpd-2.2.3.so, ../jk/binaries/win32/jk-1.2.31/ , 由於我是在XP 設定的所以是用win32, 路徑找了很久這裡註明一下)
  5. tomcat-connectors 的 src 原始檔 ( 隨apache 版本有不同的設定,這裡選用 tomcat-connectors-1.2.31-src.zip , ../jk/source/jk-1.2.31/)


整合步驟

  1. 安裝 WAMP
  2. 安裝 Tomcat
  3. 將 mod_jk-1.2.31-httpd-2.2.3.so 重新命名 mod_jk.so ,複製到Apache 下的 modules 檔案夾下(..\wamp\bin\apache\Apache2.2.17\modules)
  4. 將tomcat-connectors-1.2.31-src.zip 解壓縮到tomcat-connectors-1.2.31-src 資料夾下
  5. 把 tomcat-connectors-1.2.31-src\conf 目錄下的 httpd-jk.conf 複製到 ..wamp\bin\apache\Apache2.2.17\conf\extra\ 下
  6. 確認 有無這行 LoadModule jk_module modules/mod_jk.so 在 httpd-jk.conf , 這行功能是確認有無引用 mod_jk.so 的模組
  7. 找到這行 # JkMount /myapp|/* balancer 下 新增 JkMount /*.jsp wlb , 設定監聽檔案的類型
  8. 把 tomcat-connectors-1.2.31-src\conf 目錄下的 workers.properties.minimal 複製到 ..wamp\bin\apache\Apache2.2.17\conf\ 下 ,並重新命名 workers.properties
  9. 修改 ..wamp\bin\apache\Apache2.2.17\conf \httpd.conf 在文件最後加入下行:
    #To be added at the end of your httpd.conf
    Include conf/extra/httpd-jk.conf
    找到這行設定 首頁檔案類行 新增 jsp 格式(本例在242行):
    DirectoryIndex index.html index.htm index.jsp
  10. 確認 ../Tomcat/conf/ server.xml 下 有無 啟用 <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />


如此就可以 呼叫 jsp 在apache 上( jsp 檔要到 tomcat 的路徑)


可以用下面的 jsp 測試一下



<HTML>
<HEAD><TITLE>Test JSP</TITLE></HEAD>
<BODY>
<H1>Test JSP</H1>
Time: <%= new java.util.Date() %>
</BODY>
</HTML>






參考: 發稿為止

沒有留言: