思路:在apache启用代理模块,并配置一个虚拟主机即可。
环境:CentOS5.5+httpd-2.2.26.tar.gz
难点 && 易出错点:
1.httpd-2.2.26.tar.gz利用源码安装的话找不到代理模块,利用yum安装的话找不到virtual配置的地方。
2.建议在linux有连接外网的情况下安装,当缺少什么包时可以用yum立刻安装,否则那个依赖,会把你累死。
我这里用源码的方式安装
步骤:
1、将httpd-2.2.26.tar.gz复制到/usr/local下。
2、tar -zxvf httpd-2.2.26.tar.gz
3、cd httpd-2.2.26
4、
./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=all
这里可能会报:no acceptable C compiler foundin $PATH
是因为没有安装gcc的原因: yum -y install gcc
还有可能会报:mod_deflate has been requested的错误,是因为没有安装zlib包的原因,
yum install zlib-devel
5、make
6、make install
7、这里已经安装好,启动apache
cd /usr/local/apache/bin
./apachectl start
8、命令行中curl http://localhost,如果显示it works,说明apache已经安装成功。
9、但此时还不能使用转发,因为代理包还没有安装上。
下面以动态添加的方式,将代理模块添加进apache
进入apache源码安装目录下:
cd /usr/local/httpd-2.2.26/modules/proxy/
/usr/local/apache/bin/apxs -c -i mod_proxy.c proxy_util.c
10、此时再去/usr/local/apache/modules目录下发现已经有mod_proxy.so,mod_proxy_http.so了
11、此时:
cd /usr/local/apache/conf
vi httpd.conf
分别添加如下2行代码:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
然后在此配置文件的最下方添加如下代码:
ProxyPass /AvayaPlatform http://10.129.218.32:8080/AvayaPlatform
ProxyPassReverse /AvayaPlatform http://10.129.218.32:8080/AvayaPlatform
14、将apache重启:
cd /usr/local/apache/bin
./apachectl restart
15、下面在浏览器里面输入192.168.0.107, 发现访问的是
http://10.129.218.32:8080/AvayaPlatform
至此转发成功。
http://hi.baidu.com/luzheng22/item/96f8d0457af484d1c0a59254 提示安装zlib
http://seansnow.blog.51cto.com/5656820/1198859 提示安装gcc
http://zhumeng8337797.blog.163.com/blog/static/100768914201142482014344/?suggestedreading&wumii apache正向代理反向代理介绍
http://zhumeng8337797.blog.163.com/blog/static/1007689142010112761525975/ 静态添加和动态添加模块
http://blog.sina.com.cn/s/blog_4890155d01000bo7.html apache安装教你如何安装模块
http://sonice.blog.51cto.com/994545/796317 安装apache教程
http://mirror.bit.edu.cn/apache/httpd/ httpd所有版本下载。