Apache虚拟主机正向代理反向代理设置

2012年05月19日 Linux服务器 评论 1 条 阅读 12,352 views 次

一、正向代理

客户端无法直接访问外部的web,需要在客户端所在的网络内架设一台代理服务器,客户端通过代理服务器访问外部的web(在客户端的浏览器中设置代理服务器)
适用于:局域网的代理服务器(一般是网关,相当于squid的一般用法)、访问某个受限网络的代理服务器,如教育网访问某些国外网站需要找代理

正向代理

二、反向代理

客户端能访问外部的web,但是不能访问目标web,目标web所在的网络内一台机器充当目标web的代理,客户端直接访问代理就像访问目标web一样(此代理对客户端透明,即客户端不用做如何设置,并不知道实际访问的只是代理而已,以为就是访问的目标)
适用于: idc的某台目标机器只对内开放web,外部的客户端要访问,就让另一台机器做proxy,外部直接访问proxy即相当于访问目标、idc的目标机器的某个特殊的web服务跑在非正常端口如9000,而防火墙上只对外开放了80,此时可在80上做proxy映射到9000,外部访问80即相当于9000

 

三、Proxy功能模块

Proxy功能需要加载Proxy模块,在Linux中Apache加载Proxy模块有两种方式:静态和动态
1. 静态加载在编译Apache时需要加上编译参数--enable-proxy来开启Proxy功能
2. 动态加载方法,首先进入apache源码的目录,然后依次执行如下:

cd modules/proxy
/usr/local/apache2/bin/apxs -c -i -a mod_proxy.c proxy_connect.c proxy_http.c proxy_util.c

安装完成后在 /usr/local/apache2/modules目录下会产生相应的模块mod_proxy.so等,最后在httpd.conf里配置

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy.so

四、Apache的正向代理和反向代理的配置

正向代理配置如下

Requests On
ProxyVia On
< proxy   * >#注意把<后面的空格和>前面的空格去掉
Order deny,allow
Deny from all
Allow from www.opsers.org
< /proxy >#注意把<后面的空格和>前面的空格去掉

反向代理在虚拟主机中的应用

NameVirtualHost *:80
< virtualhost   *:80 >#注意把<后面的空格和>前面的空格去掉
ServerName www.opsers.org
ProxyRequests Off
< proxy   * >#注意把<后面的空格和>前面的空格去掉
Order deny,allow
Allow from all
< /proxy >#注意把<后面的空格和>前面的空格去掉
ProxyPass / http://www.opsers.org
ProxyPassReverse / http://www.opsers.org
< /virtualhost >#注意把<后面的空格和>前面的空格去掉

转自:http://www.xtgly.com/3314.htm

1 条留言  访客:1 条  博主:0 条

  1. 你好,我在安装apache代理,希望得到指点
    QQ:2443636424

给我留言

Copyright © 羽飞博客 保留所有权利.   Ality主题 皖ICP备14013844号-1

用户登录