免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 9257 | 回复: 23
打印 上一主题 下一主题

[Web] [整合] apache22的mod_proxy_ajp模组试用及apache22+php5+tomcat5快速安装指南 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-12-13 17:25 |只看该作者 |倒序浏览
apache22的mod_proxy_ajp模组试用及apache22+php5+tomcat5快速安装指南

12/13/2005
Note:整个安装是在5.3-RELEASE下完成的。但应该也适用于其他unix like平台。

一、准备工作:
1、先更新port,#cvsup -g -L 2 your-ports-supfile。
2、安装JDK1.5
推荐使用JDK1.5p2(native方式),介绍FreeBSD下 JDK编译的文章很多,本文不再赘述。安装完成JDK后,别忘了设置环境变量JAVA_HOME。之后验证JDK是否安装正确。执行java –version,看输出是否正确。

二、安装
1、安装tomcat
从port安装即可。
2、安装apache22
我的make参数如下:
make WITH_AUTH_MODULES=yes WITH_DAV_MODULES=yes WITH_LDAP_MODULES=yes WITH_MISC_MODULES=yes WIHT_PROXY_MODULES=yes WITH_SSL_MODULES=yes WITH_SUEXEC_MODULES=yes WITH_PROXY_MODULES="proxy proxy_http proxy_ajp proxy_balancer"
make install
make clean
安装完成后,lynx localhost测试一下。确保安装正确。
3、安装php5
cd /usr/ports/lang/php5
make install clean

安装其他需要的php扩展模组
cd /usr/ports/lang/php5-extension
make config
make
make install
make clean
编辑httpd.conf,增加如下行:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
4、配置mod_proxy_ajp
首先看一下httpd.conf中是否正确load了mod_proxy模组。如果没有的话,重新编译安装apache22。mod_proxy_ajp的配置非常简单。基于灵活性考虑,最好单独在虚拟主机中配置。我的配置如下:
<VirtualHost *>
ServerName localhost
ProxyPass / ajp://localhost:8009/
#ProxyPass / http://localhost:8180/
ProxyPassReverse / ajp://localhost:8009/
#ProxyPassReverse / http://localhost:8180/
</VirtualHost>
说明:/表示把所有发往80端口的http访问请求自动转向到tomcat监听的8080端口(FreeBSD port安装的tomcat默认监听8180端口)。lynx localhost,可以看到tomcat的welcome页。说明安装成功。
注意:由于/的设置把所有80端口的访问都forward到了tomcat,所以这可能不是我们所希望的,这种情况下apache只是个转发代理。一般情况下,我们希望apache同时能提供mod_perl、php功能。因此需要单独为jsp的应用配置URI映射。 配置同样很简单ProxyPass /myapp ajp://localhost:8009/,ProxyPassReverse /myapp ajp://localhost:8009/即可。
可以看到,比起前代的mod_jk来讲,mod_proxy_ajp非常简单方便。mod_jk的配置简直是一场噩梦。哈哈,还等什么,快升级吧。

[ 本帖最后由 HonestQiao 于 2005-12-13 22:03 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2005-12-13 21:47 |只看该作者
斑竹加个精吧, 目前没看过有人贴过这个的~

看来, 其实mod_proxy_ajp就是增加了apache对ajp协议的通用url支持, 配置的可读性大大提高了

论坛徽章:
1
巳蛇
日期:2014-12-29 11:22:41
3 [报告]
发表于 2005-12-14 11:03 |只看该作者
这是我看到的第一篇apache220的文章,谢谢

几个问题讨论一下
1. 编译apache的时候,用的是make加参数,我编译的时候是./configure --,有什么区别吗
2. ProxyPass / ajp://localhost:8009/
可以指向别的机器吗?如
ProxyPass / ajp://othermachine:8009/
3. 从文中看来,php5是支持apache220的,请问php4支持吗?

谢谢

论坛徽章:
0
4 [报告]
发表于 2005-12-14 11:26 |只看该作者
1. configure脚本可以达到make的效果,我编译过
2. 肯定可以这样写,而且是实现同IP不同域名虚拟机的方法
3. 应该可以

论坛徽章:
0
5 [报告]
发表于 2005-12-15 10:03 |只看该作者
要是再能详细点就经典了!!可以的话能不能把编译的参数都说明一下,为什么要这么编译.我这只菜鸟会非常感激的!

还有为什么要:



、先更新port,#cvsup -g -L 2 your-ports-supfile。


很菜 别笑我哦!

[ 本帖最后由 lazy_bug 于 2005-12-15 10:11 编辑 ]

论坛徽章:
1
巳蛇
日期:2014-12-29 11:22:41
6 [报告]
发表于 2005-12-15 14:32 |只看该作者
原帖由 jhsea3do 于 2005-12-14 11:26 发表
1. configure脚本可以达到make的效果,我编译过
2. 肯定可以这样写,而且是实现同IP不同域名虚拟机的方法
3. 应该可以


感谢回复,但是如果实践后再说,会对大家更有帮助:)
1. 大家一直用的是./configure,我想问的是make的区别
2. 有没有哪位朋友试过?
3. 我试的结果是不行,所以才问的

论坛徽章:
0
7 [报告]
发表于 2005-12-15 19:44 |只看该作者
原帖由 bjchenxu 于 2005-12-15 14:32 发表


感谢回复,但是如果实践后再说,会对大家更有帮助:)
1. 大家一直用的是./configure,我想问的是make的区别
2. 有没有哪位朋友试过?
3. 我试的结果是不行,所以才问的



1. 执行configure脚本的目的包括了修改Makefile配置
2. 你自己可以试试,绝对可以
3. 我编译了 apache22+php441, 没有问题

论坛徽章:
0
8 [报告]
发表于 2005-12-15 19:46 |只看该作者
原帖由 lazy_bug 于 2005-12-15 10:03 发表
要是再能详细点就经典了!!可以的话能不能把编译的参数都说明一下,为什么要这么编译.我这只菜鸟会非常感激的!

还有为什么要:



、先更新port,#cvsup -g -L 2 your-ports-supfile。


很菜 别笑我哦!


port 的步骤可能是BSD上所需要的,我不用BSD所以也没有用port,直接tarball的

论坛徽章:
0
9 [报告]
发表于 2006-01-08 23:42 |只看该作者
我想问一下关于mod_proxy_ajp。
现在您这种写法,只能是把某个目录交给tomcat解析么?不能按照文件类型来?如果这样的话,如果指定的目录里有htm文件也是有apache请求tomcat,然后由apache返回请求结果?

论坛徽章:
0
10 [报告]
发表于 2006-01-09 12:46 |只看该作者
与其讨论什么不行,不如讨论什么才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP