首頁 >後端開發 >php教程 >apache2.2用proxy_ajp方式整合tomcat6.0

apache2.2用proxy_ajp方式整合tomcat6.0

WBOY
WBOY原創
2016-08-08 09:29:561401瀏覽

Apache2.2用proxy ajp方式整合Tomcat6.0

小狼@http://blog.csdn.net/xiaolangyangyang

google一下這樣的文章還真不少.但一些不太全也不太適合我.只好自己寫了

本文主要用httpd2.2的porxy_ajp來連接tomcat我的環境為:Centos5.2

下載最新版本的apache目前最新版本為httpd-2.2.10.tar.gz

下載最新版本的tomcat日前最新版本為apache-tomcat-6.0.18.tar.gz

jdk1.6

http://apr.apache.org下載最新的apr-1.3.3和apr-util-1.3.4

一、開始安裝

1. #編譯apr


1. #編譯apr

-
zxvf apr

-1.3.3. -1. 3.3

#./configure usr/local

/
apr

-httpd/

#make

#make install

2. #aple-util

#焦油 -zxvf 四月-util-1.3.43.. #cd 四月- util-1.3.4. -pre修補=/ usr /本地/四月-util-/--with-apr=/ -httpd/ #make#make install3. #httpd

#tar-zxvf httpd-2.2.10.tar.10... -2. 2.10#./配置--配置 /本地/apache2 /---四月=/usr/本地/apr-httpd/ -util=/ usr/本地/apr-util- -所以- -啟用-模組-共享=-啟用大多數-=-啟用rewrite=shared--enable-proxy -proxy-ajp =shared--enable-proxy -enable-speling =shared#make#make install

#/usr/local/ start測試是否安裝正確用這個http://yourip/顯示apache預設頁為It works!

4. 設定

 在java.sun.com下載jdk後直接安裝就可以

2) #設定環境變數

3 ) #安裝tomcat

#tar-zxvf apache-tomcat-6.0.18. -C/usr /local/#mv/usr//usr tomcat-6. 0.18 tomcat4) 啟動tomcat並測試

#/usr/local/tomcat/bin/startup.sh

5) 访问:http://yourip:8080/如果看到默认首页证明安装成功

二.整合apache和tomcat

我这里的apache的根目录和tomcat的根目录不在同一目录,当然了你完全可以放在同一目录下

我的apache的根目录在/www tomcat的根目录在/usr/local/tomcat/webapps

修改apache的httpd.conf

添加模块:

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

打开Virtual hosts 即去掉Include conf/extra/httpd-vhosts.conf一行的注释

注释掉DocumentRoot和ServerAdmin

编辑httpd-vhosts.conf

添加:

<VirtualHost*:80>
    ServerAdmin jsjzhang@gmail.com
    DocumentRoot "/www/web"         #此虚拟主机的主目录为/www/web
   <Directory "/www/web">
        Options Indexes FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>

    ServerName www.terr.com         #只是测试,生产环境可以写为对应的域名
    ProxyPass /images !             #以下几行的意思是对/images,/sna  和/news/images几个目录的访问请求由apache处理其它都由tomcat处理.
    ProxyPass /sna !
    ProxyPass /news/images!
    ProxyPass / ajp://localhost:8009/

    ProxyPassReverse / ajp://localhost:8009/

    ErrorLog "logs/3.249-error_log"
    CustomLog "logs/3.249-access_log" common
</VirtualHost>
如何有多个虚拟主机可以再添加.例如:
<VirtualHost*:80>
    ServerAdmin jsjzhang@gmail.com
    DocumentRoot "/www/web2" 
   <Directory "/www/web2">
        Options Indexes FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>

    ServerName www.terr2.com            
    ProxyPass /images !             
    ProxyPass /sna !
    ProxyPass /news/images!
    ProxyPass / ajp://localhost:8009/

    ProxyPassReverse / ajp://localhost:8009/

    ErrorLog "logs/3.249-error_log"
    CustomLog "logs/3.249-access_log" common
</VirtualHost>

注: 生产环境下这些虚拟主机都是用域名访问的.因为他们都对应同一个IP。如何用IP访问一般打开的为最一个虚拟主机的主页。

把web这个网站放到tomcat的主目录/usr/local/tomcat/webapps下,其中images,sna和/news/images这三个目录放到/www/web下当然了我的apache还有其它用处所以没有和tomcat设为同一主目录为了简单你当然可以这么做,但一定要记得把apache中虚拟主机中的修改为和你tomcat一致的主目录,例如我这里应

该设为:

三.测试

现在启动tomcat启动apache在浏览器输入http://www.terr.com/web看看效果吧,因为是测试所以我在只在hosts里面对www.terr.com做了解析。

以上就介绍了apache2.2用proxy_ajp方式整合tomcat6.0,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn