在Windows中整合Apache和Tomcat構建Web服務器

一、如何整合?
1、相關軟件準備

    * Apache:apache_2.2.11-win32-x86-openssl-0.9.8i.msi
    * JDK:jdk-6u11-windows-i586-p
    * Tomcat:apache-tomcat-6.0.16
    * Mod_JK:mod_jk-1.2.28-httpd-2.2.3

     注:什麼是mod_jk?Apache只是一個http服務器,可以通過加載一些模塊來擴展功能。就像要解析PHP的時候,我們就需要載入PHP解析模塊!mod_jk是用來連接Apache和Tomcat的模塊。也可以“不正規”理解成用來解析JSP的一個模塊,但是真正解析JSP的還是 Tomcat!軟件的下載地址和安裝過程略!
2、配置Apache

    第一步,配置worker.properties(這個文件的名字是固定的,用於配置mod_jk的一些屬性信息,此文件可以放於任意目錄。可以參考:http://tomcat.apache.org/connectors-doc/reference/workers.html)

   1: #tomcat的目錄

   2: workers.tomcat_home="D:tomcat6"

   3: #jdk的目錄

   4: workers.java_home="C:Program FilesJavajdk1.6.0_11"

   5: ps=

   6: wk.list=ajp13

   7: wk.ajp13.port=8009

   8: wk.ajp13.host=localhost

   9: wk.ajp13.type=ajp13

  10: wk.ajp13.lbfactor=50

  11: wk.ajp13.cachesize=10

  12: wk.ajp13.cache_timeout=600

  13: wk.ajp13.socket_keepalive=1

  14: wk.ajp13.socket_timeout=300

    第二步,將mod_jk-1.2.28-httpd-2.2.3.so放到Apache目錄下的 modules文件夾(Apache Software FoundationApache2.2modules),並重命名爲mod_jk.so,然後配置httpd.conf在其文件末尾加入以下內容(參考:http://tomcat.apache.org/connectors-doc/reference/apache.html):

   1: LoadModule jk_module modules/mod_jk.so

   2: #worker.properties文件路徑

   3: JkWorkersFile "D:DevPHPApache Software FoundationApache2.2confetcworkers.properties"

   4: JkOptions     +ForwardKeySize +ForwardURICompat -ForwardDirectories

   5: JkRequestLogFormat "%w %V %T"

   6: JkLogFile "D:/DevPHP/Apache Software Foundation/Apache2.2/logs/mod_jk.log"

   7: #支持*.jsp請求

   8: JkMount /*.jsp ajp13

   9: #支持*.do請求

  10: JkMount /*.do ajp13 

接着再修改httpd.conf(Apache Software FoundationApache2.2conf)。增加對虛擬host的支持和“index.jsp”的支持

<IfModule dir_module>
    DirectoryIndex index.html index.php index.jsp
</IfModule>

新增index.jsp

# Virtual hosts
Include conf/extra/httpd-vhosts.conf  (在httpd.conf中去掉此行註解)

    第三步,最後配置httpd-vhosts.conf(Apache Software FoundationApache2.2confextra)

   1: NameVirtualHost localhost

   2: <VirtualHost localhost>

   3:     ServerAdmin [email protected]

   4:     DocumentRoot "D:/DevPHP/Apache Software Foundation/Apache2.2/htdocs"

   5:     ServerName localhost

   6:     DirectoryIndex index.html index.php index.jsp

   7: <Directory "D:/DevPHP/Apache Software Foundation/Apache2.2/htdocs/"> 

   8:   Options -Indexes FollowSymLinks 

   9:   AllowOverride None 

  10:   Order allow,deny 

  11:   Allow from all 

  12: </Directory>

  13: JkMount /servlet/* ajp13

  14: JkMount /*.jsp ajp13

  15: JkMount /*.do ajp13

  16: </VirtualHost>

3、配置Tomcat

配置tomcat的server.xml,加入以下內容:

   1: <Host name="localhost" appBase="D:/DevPHP/Apache Software Foundation/Apache2.2/htdocs/" unpackWARs="true"autoDeploy="true">

   2:     <Context path="" docBase="D:/DevPHP/Apache Software Foundation/Apache2.2/htdocs/" reloadable="true"/>

   3: </Host>


二、測試

編寫一個簡單的JSP文件放到D:/DevPHP/Apache Software Foundation/Apache2.2/htdocs/(記得使用你們自己的配置路徑)中,使用http://localhost/和http://localhost:8080訪問,如果出現相同的結果(當然這個結果需要是正確的!),恭喜你,你成功了!

 

發佈了66 篇原創文章 · 獲贊 8 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章