CentOS-6.4-minimal版中通過JK-1.2.40整合Apache-2.2.29與Tomcat-6.0.41
來源:程序員人生 發(fā)布時(shí)間:2014-10-04 08:00:00 閱讀次數(shù):3876次
/**
* CentOS-6.4-minimal版中通過JK-1.2.40整合Apache-2.2.29與Tomcat-6.0.41
* ----------------------------------------------------------------------------------------------------------------------
* AJP(Apache JServer Protocol)
* Tomcat提供了專門的JK插件來負(fù)責(zé)Tomcat和HTTP服務(wù)器(如Apache,Nginx,IIS等)的通信,也就是我們常常會看到的mod_jk
* jk安裝在對方的HTTP服務(wù)器上之后,當(dāng)HTTP服務(wù)器接收到客戶請求時(shí),它會通過jk過濾URL,jk根據(jù)預(yù)先配置好的URL映射信息,決定是否把請求轉(zhuǎn)發(fā)給Tomcat處理
* 而jk是通過AJP協(xié)議實(shí)現(xiàn)apache與tomcat之間通訊的,AJP協(xié)議是為Tomcat與HTTP服務(wù)器之間通信而定制的協(xié)議,能夠提供較高的通信速度和效率
* ajp12已經(jīng)廢棄了,目前在用的是1.3版本的協(xié)議,ajpv13協(xié)議是面向包的
* Web服務(wù)器和Servlet容器通過TCP連接來交互,為了節(jié)省socket創(chuàng)建的昂貴代價(jià),Web服務(wù)器會嘗試維護(hù)一個(gè)永久TCP連接到Servlet容器
* 并且在多個(gè)請求和響應(yīng)周期過程會重用此連接,一旦一個(gè)連接被分配給特定的請求,那么在請求處理周期結(jié)束之前這個(gè)連接不能被重用
* 大致來說,是由于以下兩個(gè)原因,導(dǎo)致Tomcat與HTTP服務(wù)器整合時(shí),采用AJP協(xié)議通信的效率要高于HTTP協(xié)議
* 1)ajp采用長連接,保持了Tomcat與HTTP服務(wù)器的通信,減少了建立TCP連接的開銷
* 2)ajp采用一定的協(xié)議格式,減少了傳遞報(bào)文的數(shù)據(jù)大小,節(jié)省了帶寬
* ----------------------------------------------------------------------------------------------------------------------
* 安裝JK-1.2.40
* 1)安裝時(shí)要指定apache安裝目錄中的apxs的位置,它可以方便我們動態(tài)加載模塊,安裝完成后會在apapche的modules目錄下生成一份mod_jk.so文件
* 2)安裝過程中若提示autoconf或libtool not found,那么yum -y install autoconf或libtool即可
* [root@CentOS64 software]# tar zxvf tomcat-connectors-1.2.40-src.tar.gz
* [root@CentOS64 software]# cd tomcat-connectors-1.2.40-src/native/
* [root@CentOS64 native]# ./buildconf.sh
* [root@CentOS64 native]# ./configure --with-apxs=/app/apache/bin/apxs
* [root@CentOS64 native]# make
* [root@CentOS64 native]# make install
* [root@CentOS64 native]# ll /app/apache/modules/
* ----------------------------------------------------------------------------------------------------------------------
* 安裝Tomcat-6.0.41
* 無需編譯源碼,直接[tar zxvf apache-tomcat-6.0.41.tar.gz]解壓即可,再執(zhí)行/app/tomcat/bin/startup.sh可以啟動Tomcat了
* ----------------------------------------------------------------------------------------------------------------------
* 配置Tomcat
* 1)關(guān)閉HTTP協(xié)議
* 注釋server.xml中的<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"/>
* 2)開啟AJP協(xié)議
* 保持server.xml中的<Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/>
* ----------------------------------------------------------------------------------------------------------------------
* 配置Apache
* 0)Apache的安裝過程詳見http://blog.csdn.net/jadyer/article/details/39583879
* 1)修改/app/apache/conf/httpd.conf文件
* 開啟虛擬主機(jī)-->取消注釋Include conf/extra/httpd-vhosts.conf
* 添加JK配置--->增加一行Include conf/extra/httpd-jk.conf
* 2)創(chuàng)建/app/apache/conf/extra/httpd-jk.conf文件,并添加以下內(nèi)容
* LoadModule jk_module modules/mod_jk.so
* JkWorkersFile conf/workers.properties
* JkLogFile logs/mod_jk.log
* JkLogLevel info
* 3)創(chuàng)建/app/apache/conf/workers.properties文件,并添加以下內(nèi)容
* worker.list=tomcat
* worker.tomcat.type=ajp13
* worker.tomcat.host=192.168.0.103
* worker.tomcat.port=8009
* 4)修改/app/apache/conf/extra/httpd-vhosts.conf文件,增加以下內(nèi)容(可使用#號注釋掉原有的兩個(gè)<VirtualHost *:80/>默認(rèn)配置)
* <VirtualHost *:80>
* ServerName "www.jadyer.com"
* DocumentRoot "/app/tomcat/webapps/docs"
* ErrorLog "logs/www.jadyer.com-error.log"
* CustomLog "logs/www.jadyer.com-access.log" common
* <Directory "/app/tomcat/webapps/docs">
* Options FollowSymLinks
* AllowOverride None
* Order allow,deny
* Allow from all
* </Directory>
* JkMount /* tomcat
* JkUnMount /*.html tomcat
* JkUnMount /*.jpg tomcat
* JkUnMount /*.css tomcat
* JkUnMount /css/* tomcat
* JkUnMount /js/* tomcat
* JkUnMount /lib/* tomcat
* </VirtualHost>
* ----------------------------------------------------------------------------------------------------------------------
* @create Sep 27, 2014 1:39:24 PM
* @author 玄玉<http://blog.csdn.net/jadyer>
*/
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈