灵活运用Apache反向代理

2009年9月26日 | 标签: , ,

很多数据中心都分内网及DMZ区,内网里的机器在严格的防火墙保护下,也不会有公网的IP,内网的机器是不可以访问Internet的。只有DMZ区的机器能与Internet交互,DMZ区的机器同时也可以访问内网的机器。通常的架构都是把Web服务器(比如Apache)放在DMZ区,而更重要的应用服务器及数据库服务都会放在内网中。

要让一般从Internet访问应用服务器的内容,必须通过DMZ的Web服务器。简单的实现方式就是利用反向代理了。Apache就可能很容易实现反向代理功能。

首先要打开Apache的代理模块

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

然后设置为反向代理模式

ProxyRequests Off

Order deny,allow
Deny from all

最后配置要反正代理的路径

ProxyPass /path http://xxx.xxx.xxx.xxx/path
ProxyPassReverse /path http://xxx.xxx.xxx.xxx/path

很简单,对吧。如果能灵活运用,可以解决很多问题。

1. 不单可以代理http,也可以代理https
2. 不单可以代理Internet到内网的访问,也可以代理内网到Internet的访问
3. 可以把多台主机虚拟到一个域下
4. 与Apache的虚拟主机结合,可以很方便的把一个虚拟主机映内网的一台应用服务器,简化路径配置
5. 可以统一处理认证授权
6. 在特殊应用里,可以隔离session
。。。。。。 越来越不好理解了,不细说了。

前些天,公司一个内网的应用需要能访问一个Internet的服务,开始设计了很复杂的方案,最后通过从内网到外网的反向代理配置很简单的实现了。

相关文章:

  1. Setting up a reverse proxy configuration with SSL
  2. 用nginx做反向代理来访问防外链图片
  3. Picasaweb的反向代理访问
  4. 反正代理的内容过滤变换
  5. WebSphere Web Server配置方式选择
目前还没有任何评论.