新聞中心
一 apache與Tomcat比較聯(lián)系
Apache支持靜態(tài)頁,Tomcat支持動(dòng)態(tài)的,比如servlet等。一般使用Apache+Tomcat的話,Apache只是作為一個(gè)轉(zhuǎn)發(fā),對(duì)jsp的處理是由Tomcat來處理的。Apache可以支持php\cgi\perl,但是要使用Java的話,你需要Tomcat在Apache后臺(tái)支撐,將java請(qǐng)求由Apache轉(zhuǎn)發(fā)給Tomcat處理。

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、小程序制作、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了太和免費(fèi)建站歡迎大家使用!
Apache是web服務(wù)器,Tomcat是應(yīng)用(java)服務(wù)器,它只是一個(gè)servlet(jsp也翻譯成servlet)容器,可以認(rèn)為是Apache的擴(kuò)展,但是可以獨(dú)立于Apache運(yùn)行。
這兩個(gè)有以下幾點(diǎn)可以比較的:
1、兩者都是apache組織開發(fā)的
2、兩者都有HTTP服務(wù)的功能
3、兩者都是免費(fèi)的
不同點(diǎn):
Apache是專門用了提供HTTP服務(wù)的,以及相關(guān)配置的(例如虛擬主機(jī)、URL轉(zhuǎn)發(fā)等等)
Tomcat是Apache組織在符合J2EE的JSP、Servlet標(biāo)準(zhǔn)下開發(fā)的一個(gè)JSP服務(wù)器
整合的好處是:
如果客戶端請(qǐng)求的是靜態(tài)頁面,則只需要Apache服務(wù)器響應(yīng)請(qǐng)求
如果客戶端請(qǐng)求動(dòng)態(tài)頁面,則是Tomcat服務(wù)器響應(yīng)請(qǐng)求
因?yàn)閖sp是服務(wù)器端解釋代碼的,這樣整合就可以減少Tomcat的服務(wù)開銷
二 Linux下Apache與Tomcat整合的簡(jiǎn)單方法
1、準(zhǔn)備,下載需要的文件。這里假定你已經(jīng)正確安裝配置好了JDK。
到Apache官方網(wǎng)站下載所需要的文件:
httpd-2.2.0.tar.gz
apache-tomcat-5.5.12.tar.gz
jakarta-tomcat-connectors-1.2.15-src.tar.gz
其中httpd和jakarta-tomcat-connectors為源碼包,apache-tomcat為二進(jìn)制包。
2、安裝Apache。
# tar xzvf httpd-2.2.0.tar.gz
# cd httpd-2.2.0
# ./configure --prefix=/usr/local/apache2 --enable-so
# make
# make install
3、安裝Tomcat。
# cp apache-tomcat-5.5.12.tar.gz /usr/local/
# cd /usr/local
# tar xzvf apache-tomcat-5.5.12.tar.gz
# ln -s apache-tomcat-5.5.12 tomcat
4、編譯生成mod_jk。
# tar xzvf jakarta-tomcat-connectors-1.2.15-src.tar.gz
# cd jakarta-tomcat-connectors-1.2.15-src/jk/native
# ./configure --with-apxs=/usr/local/apache2/bin/apxs
# make
# cp ./apache-2.0/mod_jk.so /usr/local/apache2/modules/
5、配置。
在/usr/local/apache2/conf/下面建立兩個(gè)配置文件mod_jk.conf和workers.properties。
# vi mod_jk.conf
添加以下內(nèi)容:
# 指出mod_jk模塊工作所需要的工作文件workers.properties的位置
JkWorkersFile /usr/local/apache2/conf/workers.properties
# Where to put jk logs
JkLogFile /usr/local/apache2/logs/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel info
# Select the log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
# JkOptions indicate to send SSL KEY SIZE,
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
# JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"
# 將所有servlet 和jsp請(qǐng)求通過ajp13的協(xié)議送給Tomcat,讓Tomcat來處理
JkMount /servlet/* worker1
JkMount /*.jsp worker1
# vi workers.properties
添加以下內(nèi)容:
# Defining a worker named worker1 and of type ajp13
worker.list=worker1
# Set properties for worker1
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
worker.worker1.lbfactor=50
worker.worker1.cachesize=10
worker.worker1.cache_timeout=600
worker.worker1.socket_keepalive=1
worker.worker1.socket_timeout=300
再配置httpd.conf,作以下修改:
將Listen 80 修改為 Listen 127.0.0.1:80
將ServerName 修改為 ServerName LocalHost:80
在DirectoryIndex中添加 index.jsp
我的網(wǎng)頁放在/var/wwwroot下,所以要修改DocumentRoot
DocumentRoot "/var/wwwroot"
Options Includes FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
XBitHack on
Order deny,allow
Deny from all
增加關(guān)于加載mod_jk的語句:
LoadModule jk_module modules/mod_jk.so
Include /usr/local/apache2/conf/mod_jk.conf
最后編輯Tomcat的配置文件server.xml,在HOST段中加入:
在/var/wwwroot下建立一個(gè)index.jsp,啟動(dòng)Apache和Tomcat,用瀏覽器訪問http://localhost/,應(yīng)該可以看到正確的頁面了。
三 Windows下Apache與Tomcat的整合
準(zhǔn)備工作:
1、 Apache 2.2.4
下載地址:http://cztele1.skycn.com/down/apache_2.2.4-win32-x86-no_ssl.zip
2、 Tomcat 6.0.16
下載地址:http://apache.mirror.phpchina.co ... e-tomcat-6.0.16.zip
3、 JDK
下載地址:http://cds.sun.com/is-bin/INTERS ... -windows-i586-p.exe
如果只是應(yīng)用的話,也可以選擇安裝JRE,因?yàn)镴RE比較?。海?br />4 JK-1.2.26-httpd-2.2.4
下載地址:http://www.apache.org/dist/tomca ... 2.26-httpd-2.2.4.so
注意JK的版本一定要與Apache版本相同。如果你的版本與我的不同,可以去官網(wǎng)下載,有多種版本,適用于各種操作系統(tǒng),下載適用的既可,地址:http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/
開始安裝:
軟件的安裝順序可以適當(dāng)調(diào)整,但是JDK(JRE)一定要在Tomcat之前安裝:
1、安裝JDK(JRE)
此處默認(rèn)、自定義安裝均可。安裝完成以后按下面的示例設(shè)置你的系統(tǒng)環(huán)境變量:我的電腦 -> 屬性 -> 高級(jí) -> 環(huán)境變量 (這里要添加的是系統(tǒng)變量,非用戶變量)
JAVA_HOME = D:\Program Files\Java\jdk1.6.0_07
CLASSPATH = .;%Java_Home%\lib\tools.jar;%Java_Home%\lib\dt.jar;
PATH = %Java_Home%\bin;%PATH%
注意JAVA_HOME的路徑改為你的實(shí)際安裝路徑。其它兩個(gè)不變。
2、安裝Apache
此處注意,如果你本機(jī)已經(jīng)裝了IIS并且占用了80端口,你可以選擇禁用IIS或者給IIS指定其它端口,或者給Apache指定其它端口,根據(jù)實(shí)際情況進(jìn)行設(shè)置。在Apache的安裝過程中要設(shè)置Network Domain和Server Name為Localhost,設(shè)置你的Email地址(這個(gè)一定要設(shè)置,不然Apache啟動(dòng)不起來)。
安裝完成之后,如果apache用的是80端口,那么在瀏覽器中輸入 http://localhost ,如果使用的是其它端口例如81,則輸入 http://localhost:81 ,將會(huì)看到 Apache 的成功頁面。此時(shí)Apache已經(jīng)運(yùn)行,在系統(tǒng)托盤可以看到它的圖標(biāo),雙擊打開可以對(duì)Apache服務(wù)進(jìn)行控制,我們下面還要安裝Tomcat和JK,所以現(xiàn)在選擇 Stop 停止 Apache 服務(wù)。
3、安裝Tomcat
將Tomcat解壓到 D:\Program Files\Tomcat 下,設(shè)置環(huán)境變量:
CATALINA_BASE = D:\Program Files\tomcat
CATALINA_HOME = D:\Program Files\tomcat
CLASSPATH = %CATALINA_HOME%\lib\servlet-api.jar
運(yùn)行 D:\Program Files\Tomcat\bin\startup.bat 啟動(dòng)Tomcat,出現(xiàn)Tomcat頁面則表示安裝成功。
4、安裝JK
把 mod_jk-1.2.26-httpd-2.2.4.so 拷貝到 D:\Program Files\Apache2.2\modules 下。
下面進(jìn)行服務(wù)器的配置:
1、配置Tomcat
查找Tomcat目錄下的 conf/server.xml文件,在
在這里,如果 path 不為空,則設(shè)置的是虛擬目錄,path 的值為虛擬目錄名。
查找Tomcat目錄下的 conf/workers.properties文件,并對(duì)比下方文本內(nèi)容,如有不同處,以下方文本為準(zhǔn)進(jìn)行修改。
workers.tomcat_home=C:\apache-tomcat-6.0.18 #讓mod_jk模塊知道Tomcat的位置
workers.java_home=D:\Program Files\Java\jre1.6.0_07 #讓mod_jk模塊知道jre的位置
ps=\
worker.list=ajp13 #模塊版本
worker.ajp13.port=8009 #工作端口,若沒占用則不用修改
worker.ajp13.host=localhost #本機(jī),若上面的Apache主機(jī)不為localhost,作相應(yīng)修改
worker.ajp13.type=ajp13 #類型
worker.ajp13.lbfactor=1 #代理數(shù),不用修改
如果此文件不存在,則依以上內(nèi)容創(chuàng)建。對(duì)Tomcat的設(shè)置進(jìn)行任何修改后都要重啟才可以生效。
2、配置Apache
打開D:\Program Files\Apache2.2\conf下的httpd.conf,在最后加入下面這段代碼并保存。
LoadModule jk_module modules\mod_jk-1.2.26-httpd-2.2.4.so
#此處mod_jk的文件為你下載的文件
JkWorkersFile "D:\Program Files\Tomcat\conf\workers.properties"
#指定tomcat監(jiān)聽配置文件地址
JkLogFile "D:\Program Files\Tomcat\logs\mod_jk2.log"
#指定日志存放位置
JkLogLevel info
#設(shè)置虛擬主機(jī)
#如果非虛擬主機(jī),將
ServerAdmin localhost
DocumentRoot E:/wwwroot
#您的站點(diǎn)項(xiàng)目所在路徑,應(yīng)與tomcat中的目錄設(shè)置相同,據(jù)說以上兩個(gè)必須同時(shí)設(shè)置才可以生效,沒有試過不同的時(shí)候會(huì)有什么情況
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支持對(duì)servlet傳送,用以Tomcat解析
JkMount /*.jsp ajp13
#讓Apache支持對(duì)jsp傳送,用以Tomcat解析
JkMount /*.do ajp13
#讓Apache支持對(duì).do傳送,用以Tomcat解析
#開頭的行為注釋,可以刪除。此處的配置我是以設(shè)置虛擬目錄,重新指定了serverName,DocumentRoot路徑的方式配置站點(diǎn),實(shí)際上,Apache的配置可以非常靈活,你也可以不采用虛擬目錄的方式,而直接去修改站點(diǎn)的默認(rèn)配置,使用任意文本編輯工具,搜索如 ServerName,DocumentRoot,ServerAdmin等相關(guān)項(xiàng),然后將該項(xiàng)的配置根據(jù)你的實(shí)際情況進(jìn)行修改即可。我建議大家可以多多嘗試不同的配置,這是一種很有樂趣的體驗(yàn)。
所有的修改完成以后,雙擊系統(tǒng)托盤中的Apache圖標(biāo),然后點(diǎn)擊Start啟動(dòng)Apache服務(wù)。
在地址欄中分別輸入http://localhost/,與http://localhost:8080/若結(jié)果相同,Apache與Tomcat整合成功
安裝常見問題:
1.一啟動(dòng)Apache出現(xiàn)“windows不能在本地計(jì)算機(jī)啟動(dòng)Apache2”錯(cuò)誤
多數(shù)情況是端口的問題,可能有其他軟件占用了80端口,最好把Apache的端口改成81端口就可以了
2.windows下查看80端口占用情況,適用于查看任何端口
開始–運(yùn)行–cmd 進(jìn)入命令提示符輸入netstat -ano 即可看到所有連接的PID 之后在任務(wù)管理器中找到這個(gè)PID所對(duì)應(yīng)的程序如果任務(wù)管理器中沒有PID這一項(xiàng),可以在任務(wù)管理器中選”查看”-”選擇列”,經(jīng)常,我們?cè)趩?dòng)應(yīng)用的時(shí)候發(fā)現(xiàn)系統(tǒng)需要的端口被別的程序占用,如何知道誰占有了我們需要的端口,很多人都比較頭疼,下面就介紹一種非常簡(jiǎn)單的方法,希望對(duì)大家有用。
我們需要確定誰占用了我???的80端口
在windows命令行窗口下執(zhí)行:C:\>netstat -aon|findstr “80″
看到了嗎,端口被進(jìn)程號(hào)為2044的進(jìn)程占用,繼續(xù)執(zhí)行下面命令:
C:\>tasklist|findstr “2044″
avp.exe 2044 Console 0 37,680 K
很清楚吧,avp 卡巴監(jiān)聽80端口,調(diào)整卡巴網(wǎng)絡(luò)監(jiān)聽設(shè)置。
當(dāng)然,如果你的80端口被其他程序占用,kill掉或者調(diào)整端口。
四完!
感謝,Thanks!
分享題目:CentOS6下Apache和Tomcat整合
當(dāng)前網(wǎng)址:http://www.dlmjj.cn/article/dpohpod.html


咨詢
建站咨詢
