1、用 apache 配置反向代理服务器反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个服务器。Apache 是世界使用排名第一的 Web 服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的 Web 服务器端软件之一。Apache 作为一个反向代理服务器(R-Proxy) ,可以和 WAS、WLS 等集成,但不能和 IIS 集成一般来说,要在外网访问内网的服务器需要在
2、路由上做端口映射。比如路由 IP 192.168.0.1 内网服务器 A 的 IP 192.168.0.2。要让外网通过路由访问服务器 A 的 WEB 页面,就必须在路由上设置 TCP 80 端口映射。即将外网对路由公网 IP TCP 80 访问转移到服务器 A 的 192.168.0.2 的 TCP 80 端口上。这样,在外网也就是公网访问本局域网的公网 IP http 80 WEB 页面就是访问服务器 A 192.168.0.2 的 TCP 80 http WEB 服务。如果有第二台服务器 B 或者 A 要开放另外的端口,都必须在路由上再分配一个不同的端口映射到相应的机器的相应端口上。那么
3、,如果局域网有两台以上的服务器呢,对于服务器 A 安装 Apache 做 WEB 服务(不论是 Win32 还是 UNIX 系统) ,设置路由将 80 端口映射到 A。对于其他的服务器 B C 可以安装 Apache 或者 IIS 或者其他可能的 http 服务软件,并不需要在路由上做端口映射,也不需要 WEB 服务使用特定端口。甚至也可以服务器 A 上另外安装一个 WEB 服务软件使用 80 以外的端口。那么,关键的内容在于对服务器 A 上的 Apache 进行设置,做一个反向代理,让外网可以通过服务器 A 的 Apache 提供的 WEB 代理来访问和 A 在一个局域网的其他服务器 WEB
4、 页面。我使用的是 apache2.2.17首先是 Apache 的安装。从 http:/www.apache.org 上下载 Apache 的安装程序,双击安装程序进行安装。安装好之后屏幕右下方系统托盘*会出现一个红色的羽毛状图标,那就是Apache 的控制程序。单击此图标以启动 Apache 服务器。这时打开 IE 并在 IE 的地址栏*输入 http:/localhost/应当能够看到 Apache 的欢迎画面。当 apache 正常启动后就可以进行配置了。接下来我们修改 Apache 的配置文件使其支持 HTTP 代理服务器功能。用文本编辑器打开httpd.conf 文件。该文件位于
5、Apache 安装目录的 conf 目录下。如果你在安装 Apache 的时候没有改变安装路径,那么它应当位于 C:Program FilesApache GroupApacheconfhttpd.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#LoadModule pr
6、oxy_ftp_module modules/mod_proxy_ftp.so去掉前面的#号使相应的模块生效。然后对于要代理的局域网内每个服务器设置一项:ServerName ProxyPass / http:/192.168.0.3:88/ProxyPassReverse / http:/192.168.0.3:88/这部分内容只要加在 httpd.conf 这个问价下边即可。然后在最后加上一句 ProxyRequests On192.168.0.2 是服务器 A 的 IP,就是做 Apache 代理的服务器。 是域名,这个必须能解析到路由公网 IP 的域名。而 http:/192.168.0.3:88 是服务器 A 能访问到的内网 WEB 服务地址。IP 和端口都可以任意指定。配置完成以后重新启动 apache,就可以起到反向代理服务的作用了。