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

企鹅博客
19220
文章
0
评论
2019年7月12日17:00:20 评论 2.1K views 2954字阅读9分50秒

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

#tar - zxvf apr - 1 . 3 . 3 . tar . gz

#cd apr - 1 . 3 . 3

#. / configure - - prefix = / usr / local / apr - httpd /

#make

#make install

2. #编译apr-util

#tar - zxvf apr - util - 1 . 3 . 4 . tar . gz #cd apr - util - 1 . 3 . 4 #. / configure - - prefix = / usr / local / apr - util - httpd / - - with - apr = / usr / local / apr - httpd / #make #make install

3. #编译httpd

#tar - zxvf httpd - 2 . 2 . 10 . tar . gz #cd httpd - 2 . 2 . 10 #. / configure - - prefix = / usr / local / apache2 / - - with - apr = / usr / local / apr - httpd / - - with - apr - util = / usr / local / apr - util - httpd / - - enable - so - - enable - mods - shared = most - - enable - rewrite = shared - - enable - proxy = shared - - enable - proxy - ajp = shared - - enable - proxy - balancer = shared - - enable - speling = shared #make #make install

启动:

#/ usr / local / apache2 / bin / apachectl start

测试是否安装正确 用这个http://yourip/显示apache默认页面为It works!

4. 配置tomcat

1) #安装JDK1.6

在java.sun.com下载jdk后直接安装就可以

2) #设置环境变量

vim /etc/profile 添加:

export JAVA_HOME=/usr/java/jdk
export JRE_HOME=$JAVA_HOME/jre
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

3) #安装tomcat

#tar - zxvf apache - tomcat - 6 . 0 . 18 . tar . gz - C / usr / local / #mv / usr / local / apache - tomcat - 6 . 0 . 18 tomcat

4) 启动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

添加:

  
   
    ServerAdmin [email protected]
    DocumentRoot "/www/web"         #此虚拟主机的主目录为/www/web
   
   
     Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all  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 
   
  

如何有多个虚拟主机可以再添加.例如:

  
   
    ServerAdmin [email protected]
    DocumentRoot "/www/web2" 
   
   
     Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all  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 
   
  

注: 生产环境下这些虚拟主机都是用域名访问的.因为他们都对应同一个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教程有兴趣的朋友有所帮助。

继续阅读
  • 版权声明: 发表于 2019年7月12日17:00:20
  • 转载注明:https://www.qieseo.com/224950.html
php隐藏文件实际下载地址的方法 php教程

php隐藏文件实际下载地址的方法

这篇文章主要介绍了php隐藏实际地址的文件下载方法,涉及php中header与file_get_contents方法的相关使用技巧,非常具有实用价值,需要的朋友可以参考下 本文实例讲述了php隐藏实际...
CodeIgniter入口文件解析 php教程

CodeIgniter入口文件解析

提到了CI框架的基本流程,这里再次贴出流程图,以备参考:   作为CI框架的入口文件,源码阅读,自然由此开始。在源码阅读的过程中,我们并不会逐行进行解释,而只解释核心的功能和实现。 1. 设置应用程序...
PHP四舍五入、取整、round函数使用 php教程

PHP四舍五入、取整、round函数使用

这篇文章主要介绍了PHP四舍五入、取整、round函数使用示例,需要的朋友可以参考下 小数例子: PHP保留两位小数并且四舍五入 复制代码 代码如下: $n=0.1265489; echo sprin...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: