apache2.2和tomcat5.5

Apache和Tomcat同是Apache基金會下面的兩個項目。一個是HTTP WEB服務器,另一個是servlet容器(servlet container),最新的5.5.X系列實現Servlet 2.4/JSP 2.0Spec。在我們生產的環境中,往往需要Apache做前端服務器,Tomcat做後端服務器。此時我們就需要一個連接器,這個連接器的作用就是把 所有Servlet/JSP的請求轉給Tomcat來處理。在Apache2.2之前,一般有兩個組件可選擇。mod_jk和mod_jk2。後來 mod_jk2沒更新了,轉而更新mod_jk,所以現在一般都使用mod_jk做Apache和Tomcat的連接器。要指出的是mod_jk支持 Apache 1.x和2.X系列。
不過,自從Apache2.2出來後,你又多了種選擇,那就是proxy-ajp.大家知道Apache裏的proxy模塊,可以實現雙向代理功能,功能 非常強大。其實從連接器的實現原理上來說,用proxy模塊來實現是非常自然的。proxy模塊的功能無非就是把相關的請求發給特定的主機再返回結果。那 連接器的功能需求就是要把所有對Servlet/JSP的請求都轉給後臺的Tomcat。而且所FreeBSD郵件列表上說,使用proxy-ajp要比 mod_jk的效率要高。就我一個外行來看,至少使用Apache自帶模塊,要比另外編譯的來得可靠。


apache2.2和tomcat5.5是一個不錯的組合,可以作爲開發環境或者是工作服務器。在配置前需要下載以下幾個文件:
1.下載JDK
http://192.18.108.228/ECom/EComTicketServlet/BEGIN7CF7E6A4BCB54064E5D90FCCE00D7048/-2147483648/1579524843/1/732086/731822/1579524843/2ts+/westCoastFSEND/jdk-1.5.0_07-oth-JPR/jdk-1.5.0_07-oth-JPR:2/jdk-1_5_0_07-windows-i586-p.exe
2.下載apache2.2
http://mirror.vmmatrix.net/apache/httpd/binaries/win32/apache_2.2.2-win32-x86-no_ssl.msi
3.下載tomcat5.5.17
http://apache.justdn.org/tomcat/tomcat-5/v5.5.17/bin/apache-tomcat-5.5.17.exe


一、安裝和配置JDK
下載下來後,直接執行jdk-1.5.0_07-oth-JPR:2/jdk-1_5_0_07-windows-i586-p.exe
實裝時建議選擇簡單的路徑,如E:/Web_Server/jdk1.5.0/
安裝最後會要求安裝jre,繼續下一步就行,安裝路徑E:/Web_Server/jre1.5.0/。

裝完後添加或編緝三個系統變量(已經有就編緝,沒有就新建):
在PATH變量尾加在";E:/Web_Server/jdk1.5.0/bin/" (注意有個分號)
新建Web_Server_HOME變量,值爲 "E:/Web_Server/jdk1.5.0/"
新建CLASSPATH變量,值爲 "E:/Web_Server/jdk1.5.0/lib/tools.jar"

二、安裝和測試apache
在安裝前如已安裝了IIS,請先停止IIS服務。因爲IIS和apache都默認使用80端口,否則會衝突。
同樣直接運行安裝apache_2.2.2-win32-x86-no_ssl.msi,建議選擇簡單的路徑,如E:/Web_Server/ apache2.2/。安裝時會要求輸入一些關於這臺服務器的信息,如域名、管理員郵箱,這些信息將會加入到httpd.conf文件中。

安裝完配置httpd.conf文件,在E:/Web_Server/apache2.2/conf/下
用文本編緝器打開httpd.conf,在DirectoryIndex index.html後添加index.jsp

測試,在IE中輸入http://localhost/,如果apache工作應該可以看到"It works!"這樣的頁面。

三、安裝和測試tomcat
直接運行安裝tomcat,安裝路徑爲E:/Web_Server/tomcat5.5/
安裝完,好像步驟一,添加一個系統變量TOMCAT_HOME,變量值爲"E:/Web_Server/tomcat5.5/"
最後測試tomcat,因爲tomcat默認使用了8080端口,所以在IE輸入http://localhost:8080,正常工作會看見一隻小貓的頁面。

四。整合apache和tomcat
網上很多是通過mod_jk來整合的,由於apache2.2本身已經支持tomcat了,所以這裏用proxy來整合tomcat,先把apache和tomcat都停止了。然後打開httpd.conf文件,把
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
前面的#號去掉,在文件最後添加
ProxyPass /images/ !
ProxyPass / ajp://127.0.0.1:8009/
ProxyPassReverse / ajp://127.0.0.1:8009/
上面幾名只是對apache進行簡單的優化。

五、最後測試整合後的apache+tomcat
啓動apache,再啓動tomcat,準備以下代碼的jsp文件,以便測試。
<%@ page contentType="text/html;charset=gb2312" %>
<HTML>
<HEAD>
<TITLE>JSP測試頁面</TITLE>
</HEAD>
<BODY>
<%out.println("<h1>Hello World! </h1>");%>
</BODY>
</HTML>
保存爲test.jsp
在E:/Web_Server/tomcat5.5/webapps/ROOT/下新建一個文件夾myjsp,並把test.jsp放在裏面。
在IE中輸入http://localhost:8080/myjsp/test.jsp
再輸入http://localhost/myjsp/test.jsp
如果兩次都顯示Hello World!說明已經成功整合了。


============================
方法之二:
Windows環境下的tomcat + apache配置(絕對實踐操作版)
關鍵詞: tomcat apache

Apache的HTTPD是目前比較受歡迎的網站服務器軟件,它不但功能強大,而且完全免費,並且支持市場上流行的各種操作系統(Windows, Linux,Mac os)。同時對於Java Servlet/JSP的支持,通常也會使用同樣Apache出品的Tomcat。
Tomcat除了支持Java Servlet/JSP之外,也可以當做網站服務器使用,但是在對於靜態的html文件、圖片文件等的解析效率上不如Apache HTTPD的執行效率高。應用tomcat的服務器如果網站的訪問量較大,系統資源佔用會明顯升高,近日筆者在項目執行過程中遇到這一問題,便也想到同時 應用tomcat+apache服務。Apache負責靜態資源處理,tomcat負責jsp和java servlet等動態資源的處理。在網上看了不少介紹Apache和Tomcat集成的帖子。大多爲互相轉貼,有幾個關鍵問題沒有講清楚,並且多數文章講 解中所舉的軟件版本都已經比較老舊。因而筆者總結自己實際操作的經驗,希望對大家有所幫助。

準備工作:
1、 apache 2.0.55
下載地址:http://apache.justdn.org/httpd/binaries/win32/apache_2.0.55-win32-x86-no_ssl.msi
2、 Tomcat 5.5
下載地址:http://tomcat.apache.org/download-55.cgi
3、 JRE1.5.0 update6
下載地址:http://java.sun.com/j2se/1.5.0/download.jsp
你也可以選擇安裝JDK,JDK不僅包含了運行java應用程序的支持,同時也包含J2SE的開發包。但如果您只是應用的話,我建議您僅下載JRE即可,爲什麼?因爲它小啊:)
4、JK-apache-2.0.55
下載地址:
http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.15/mod_jk-apache-2.0.55.so
注意jk的版本一定要與你的apache版本相同。Jk下載可以直接到apache.org官網下載,有多種版本,適用於各種操作系統,地址如下:
http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/
windows用戶進入win32目錄,不同的tomcat對應不同jk文件擴展名不同,有可能是*.dll,或者*.so,根據你的tomcat版本下載合適的jk版本。

安裝,軟件的安裝順序可以適當調整,但是jre(jdk)一定要在tomcat之前安裝:
1、安裝JRE(JDK)
此處選擇默認安裝即可,(舊版本的JDK安裝完之後需要設置系統的環境變量,JRE和JDK1.5.0以後版本不設置也沒關係。)安裝完成之後你可以選擇按照下面的示例設置你的系統環境變量:我的電腦->右鍵屬性->常規->高級->環境變量
JAVA_HOME = d:/Java/jre1.5.0_06
CLASSPATH = .;d:/Java/jre1.5.0_06/lib/dt.jar;d:/Java/jre1.5.0_06/lib/tools.jar
PATH = d:/Java/jre1.5.0_06/bin
注意文件路徑要改成你實際安裝的路徑。

2、Apache安裝
此處注意,如果你本機已經裝了iis並且佔用80端口,務必先在服務中將iis停止或禁用。軟件默認安裝即可。安裝過程中設置Network Domain和Server Name爲localhost,設置你的email地址,下方會讓你選擇only for the current user或for all users。默認選擇for all users。這樣Apache就會佔用80端口,並且做爲一個系統服務開機自運行。
安裝完成之後,你在瀏覽器中輸入http://localhost, 將會看到Apache的成功頁面.Apache的主目錄是d:/Apache/Apache2,此時Apache,已經運行,你可以在窗口的托盤看到他的 圖標,雙擊圖標,在彈開的窗口選擇"Open Apache Monitor",點Stop,停止Apaceh服務,因爲下面要安裝Tomcat和JK.

3、Tomcat安裝
選擇安裝目錄爲了d:/Tomcat,其餘爲默認安裝.成功後在瀏覽器中輸入http://localhost:8080,出現Tomcat頁面表示安裝成功了。關於tomcat的設置已經有很多非常詳細的文章,在此就不再詳述了。

4、JK的安裝
把mod_jk_2.0.55.so拷貝到d:/Apache/Apache2/modules/下.

以上安裝全部完成後,打開cmd命令提示符,運行d:/Apache/Apache2/bin/Apache.exe -t 你將會看到"Syntax OK",表示Apache配置正常.這個命令非常有用,下面在繼續配置Apache的時候還會再次用到。

配置服務器:

1、配置Tomcat
查找目錄下的conf/workers.properties文件,並對比下方文本內容,如有不同以下方內容爲準修改。
workers.tomcat_home=d:/Tomcat #讓mod_jk模塊知道Tomcat的位置
workers.java_home=d:/Java/jre1.5.0_06 #讓mod_jk模塊知道jre的位置
ps=/
worker.list=ajp13 #模塊版本
worker.ajp13.port=8009 #工作端口,若沒佔用則不用修改
worker.ajp13.host=localhost #本機,若上面的Apache主機不爲localhost,作相應修改
worker.ajp13.type=ajp13 #類型
worker.ajp13.lbfactor=1 #代理數,不用修改

如果文件不存在則創建。並填充上述內容。

2、配置Apache
打開d:/Apache/Apache2/conf下的httpd.conf,在最後加入下面這段代碼並保存。
#設置Apache與Tomcat之間的連接,讓Apache遇到jsp文件時,在後臺將其交由Tomcat去處理
LoadModule jk_module modules/mod_jk_2.0.55.so
#此處mod_jk的文件爲你下載的文件
JkWorkersFile "d:/Tomcat/conf/workers.properties"
#指定tomcat監聽配置文件地址
JkLogFile "d:/Tomcat/logs/mod_jk2.log"
#指定日誌存放位置
JkLogLevel info

#設置虛擬主機

ServerAdmin localhost
DocumentRoot d:/test1
#您的站點項目所在路徑,應與tomcat中的目錄設置相同
ServerName localhost
DirectoryIndex index.html index.htm index.jsp
ErrorLog logs/shsc-error_log.txt
CustomLog logs/shsc-access_log.txt common
JkMount /servlet/* ajp13
#讓Apache支持對servlet傳送,用以Tomcat解析
JkMount /*.jsp ajp13
#讓Apache支持對jsp傳送,用以Tomcat解析
JkMount /*.do ajp13
#讓Apache支持對.do傳送,用以Tomcat解析


#開頭的行爲註釋,可以刪除。此處的配置我是以設置虛擬目錄,重新指定了serverName,DocumentRoot路徑的方式配置站點,實際上, Apache的配置可以非常靈活,你也可以不採用虛擬目錄的方式,而直接去修改站點的默認配置,使用任意文本編輯工具,搜索如ServerName, DocumentRoot,ServerAdmin等相關項,然後將該項的配置根據你的實際情況進行修改即可。我建議大家可以多多嘗試不同的配置,這是一 種很有樂趣的體驗。
所有的修改完成這後,再次執行d:/Apache/Apache2/bin/Apache.exe -t 如果看到"Syntax OK",說明你所有配置無誤,雙擊窗口的托盤中的圖標,然後點擊Start運行。
在地址欄中分別輸入http://localhost/,與http://localhost:8080/若結果相同,Apache與Tomcat整合成功
發佈了56 篇原創文章 · 獲贊 10 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章