1. 下載安裝jdk-6u17-linux-x64-rpm.bin,並修改JAVA路徑與PATH變數;
2. 下載安裝httpd-2.2.14
編譯安裝命令依次如下:
./configure --prefix=/usr/local/apache2 --enable-so
make
make install
3. 下載安裝tomcat-connectors-1.2.30-src.tar
cd native
./configure --with-apxs=/usr/local/apache2/bin/apxs
make
cp /native/apache-2.0/mod_jk.so /usr/local/apache2/modules/
cp /conf/httpd_jk.conf /usr/local/apache2/conf/extra/
cp /conf/ workers.properties.minimal /usr/local/apache2/conf/workers.properties
4 下載配置apache-tomcat-6.0.20
注意修改/conf/server.xml中的幾個連接埠號碼,預設是8080連接埠,我們改為8081,另外AJP13使用的是8009連接埠,我們這裡改為9001。總之注意不要與其他tomcat執行個體以及其他系統的連接埠有衝突;
4. 配置apache
修改httpd.conf
Listen :80
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
# mod_jk
Include conf/extra/httpd-jk.conf
5. 修改workers.properties檔案
在worker.list後面添上testworker
worker.testworker.type=ajp
worker.testworker.port=9001
6, 修改httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin webmaster@www.test.com
<!-- 一般將網站檔案直接部署在tomcat,webapps的ROOT路徑下-->
DocumentRoot "/usr/local/tomcat_instances/www.test.com/webapps/ROOT"
<!--注意一定寫http://後面的網域名稱全程,有www的一定要帶上-->
ServerName www.test.com
ServerAlias www.test.com
ErrorLog "logs/www.test.com-error_log"
CustomLog "logs/www.test.com-access_log" common
<!-- 這裡我的理解是當請求www.test.com/a.jsp時,將此請求轉給testworker處理,若上面的DocumentRoot不是tomcat的ROOT路徑下,那麼這裡請求的a.jsp不會對DocumentRoot下的jsp,這裡只是轉寄請求,而不是讓tomcat來解釋我們DocumentRoot路徑下的a.jsp,故所轉寄的請求將由tomcat根據自身的路徑進行判斷-->
JkMount /servlet/* testworker
JkMount /*.jsp testworker
JkMount /*.do testworker
DirectoryIndex index.html index.htm index.jsp
<!--以下是模仿網上例子對目錄進行的使用權限設定,但這裡只會對靜態檔案有作用,因為.jsp類的請求均由tomcat管理,那麼理應是tomcat對其進行許可權控制,不知這樣理解是否正確-->
<Directory "/usr/local/tomcat_instances/www.test.com/webapps/ROOT">
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
7, 可以先修改本地hosts檔案做一下測試,
127.0.0.1 www.test.com
apache2/bin/apachectl –k start 可輸入http://localhost/ 看看是否能展現測試頁
tomcat/bin/startup.sh 可輸入http://localhost:[連接埠號碼,這裡是8081]看看tomcat是否正常