用apache配置虚拟主机做代理出现这个错误知道是为什么嘛,尼妈的真是坑爹啊。原来是少加了几个module靠
要用apache配置虚拟主机需要加载这几个module
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
但是在linux下怎么添加这个几个组件呢?
尼妈在linux下安装apache的时候我不知道怎么把proxy这个组件添加到默认安装里面去
没有proxy这个module妈的虚拟主机配置不了,所以以下就是安装这个主件的方法
我用的是httpd-2.2.21.tar.gz这个安装程序
我放在了/opt下面
我是先解压#tar zxvf httpd-2.2.21.tar.gz
安装apache的步骤我就不说了,我的安装路径为/usr/local/apache2/
在/opt下面呢会出现一个httpd-2.2.21的文件夹
#cd httpd-2.2.21
#cd modules/proxy
#/usr/local/apache2/bin/apxs -i -c -a mod_proxy.c prox_util.c
#/usr/local/apache2/bin/apxs -i -c -a mod_proxy_http.c
#/usr/local/apache2/bin/apxs -i -c -a mod_proxy_connect.c
apxs命令解析:
-i
此选项表示需要执行安装操作, 以安装一个或多个动态共享对象到服务器的modules目录中。-a
此选项自动在httpd.conf
文件中增加一个LoadModule
行,以激活此模块,或者,如果此行已经存在,则启用之。-A
与-a
选项类似,但是它增加的LoadModule
指令由一个井号前缀(#
), 即,此模块已经准备就绪,但尚处于禁用状态。-e
此选项表示需要执行编辑操作,它可以与-a
和-A
选项配合使用, 与-i
操作类似,修改Apache的httpd.conf
配置文件,但是并不安装此模块。
这样你就可以配置虚拟主机了。我内牛满面啊
为tomcat作代理
NameVirtualHost *:80
########CMS######
<VirtualHost *:80>
ServerName ***.net.cn
ProxyPreserveHost On
ProxyRequests On
ProxyPass / http://localhost:81/
ProxyPassReverse / http://localhost:81/
ErrorLog logs/cms.tel.comsys.net.cn_error_log
CustomLog logs/cms.tel.comsys.net.cn_access_log common
</VirtualHost>
现在重启apache就行了