apache反向代理实战

 公司需求把

http://www.xxx.com/npx

代理http://www.yyy.com/npx

刚开始编译apache没有支持proxy模块

所以需要重新编译apache支持proxy模块(静态加载),或者动态加载proxy模块

我选择的动态编译

进入cd /opt/lanmp/httpd-2.2.22/modules/proxy

/httpd-2.2.22/binapxs -c -i  -a mod_proxy_connect.c

/httpd-2.2.22/bin/apxs -c -i -a mod_proxy_http.c 

/httpd-2.2.22/bin/apxs -c -i  -a mod_proxy.c 

/httpd-2.2.22/bin/apxs -c -i  -a proxy_util.c 

 

 

编译完后会看到 http.conf中多了下面几行 如果没有自行添加

 

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

 

安装apache的module目录里也会出现

 mod_proxy_connect.so  mod_proxy_http.so  mod_proxy.so

模块。

然后编辑 

proxy.conf文件

 

ProxyPass /npx    http://www.yyy.com:8081/npx/   

ProxyPassReverse /npx  http://www.yyyy.com:8081/npx/

<proxy  http://www.xxx.com/npx>

    AllowOverride All

    Order Deny,Allow

    Allow from all

</proxy>

#######

这里/指的是web的/目录如果有多少vhost 记得在单独的 <Directory>里面添加

############

测试ok  如果还要代理其他目录添加即可。

 

 

 

 

你可能感兴趣的:(apache,linux软件)