apache 配置代理服务器(正向代理,反向代理)

正向代理和反向代理是从数据流方向命名的,正向代理,代理的用户请求;反向代理,替代服务器接受请求

 

正向代理: 用户 -》 代理服务器 -》 www  用户的请求数据给发代理服务器,代理服务器帮助用户去www请求数据,然后再返回给用户

作用:配置代理服务器,客户端做代理设置后可以访问facebook,Twitter

如何配置:

<VirtualHost *:80>
  DocumentRoot /home/web
  ServerName www.xxx.com
  ServerAlias xxx.com
  ErrorLog "logs/zx_xxx.com-error.log"
  CustomLog "logs/zx_xxx.com-access.log" common
  <Directory "/home/web">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
  </Directory>
  ProxyRequests On
  ProxyVia On
  <Proxy *>
    Order deny,allow
    Allow from all
  </Proxy>
</VirtualHost>

先建立一个虚拟主机,然后在里面配置标红的指令,标红指令就是配置正向代理指令

ProxyRequests On 代表开启正向代理
ProxyVia On 修改header数据头,做标识


反向代理: 用户 《- 代理服务器 《- www.xxx.xxx xxx网站根服务器不是直接接收用户的请求,而是通过自己的代理服务器接收请求,然后再转发给自己。

作用:如果你用自己的域名www.xxx.xxx配置了www.baidu.com 的反向代理,那么你访问www.xxx.xxx就相当于访问www.baidu.com (google需要配置ssl代理)

配置:

############反向代理

<VirtualHost *:80>    DocumentRoot "D:/www/test"
    ServerName www.xxx.com
    ServerAlias xxx.com
    ErrorLog "logs/fx_xxx.com-error.log"
    CustomLog "logs/fx_quduoqi.com-access.log" common
    <Directory "D:/www/test">
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

    #反向代理设置
    ProxyPass / http://www.baidu.com/
    ProxyPassReverse / http://www.baidu.com/

</VirtualHost>

同正向代理也是先配置一个虚拟主机,然后配置反向代理指令

ProxyPass / http://www.baidu.com/  代表到www.xxx.com/的请求都转给 www.baidu.com 
ProxyPassReverse / http://www.baidu.com/  替换返回页面中的url 如果页面中有www.baidu.com/xx/xx都替换成www.xxx.xxx/xx/xx

 

我的apache是2.4.6 仅供参考

参考:

http://www.cnblogs.com/zemliu/archive/2012/04/18/2454655.html

http://baike.baidu.com/view/1165595.htm

http://baike.baidu.com/view/751.htm

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。