使用Httpd反向代理配置

1 反向代理的概念
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。
通常的代理服务器,只用于代理内部网络对Internet外部网络的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中。不支持外部网络对内部网络的连接请求,因为内部网络对外部网络是不可见的。当一个代理服务器能够代理外部网络上的主机,访问内部网络时,这种代理服务的方式称为反向代理服务。此时代理服务器对外就表现为一个Web服务器,外部网络就可以简单把它当作一个标准的Web服务器而不需要特定的配置。不同之处在于,这个服务器没有保存任何网页的真实数据,所有的静态网页或者CGI程序,都保存在内部的Web服务器上。因此对反向代理服务器的攻击并不会使得网页信息遭到破坏,这样就增强了Web服务器的安全性。

2 反向代理服务器的工作流程
1) 用户通过域名发出访问web服务器的请求,该域名被DNS服务器解析为反向代理服务器的IP地址;
2) 反向代理服务器接受用户的请求;
3) 反向代理服务器在本地缓存中查找请求的内容,找到后直接把内容发送给用户;

3 apache httpd配置反向代理服务器
1) 首先下载并安装httpd web服务器
打开http://httpd.apache.org/进行下载,根据操作系统的类型下载对应的httpd版本,如果是Windows版本,就直接傻瓜式安装就可以了。而Linux版本的话,建议使用yum -install httpd 命令在线安装,或者使用源代码编译的方式进行安装。具体的安装过程可以参考相关的文档。
2)配置httpd web服务器的代理功能
修改httpd安装conf目录下的httpd.conf文件,搜索proxy关键字,找到以下几个参数,把前面的#符号取消

之后,在httpd.conf配置文件的最后添加反向代理配置
参考案例如下:

案例是将http://localhost/tomcat6/ 链接地址转发到绑定了8080端口的tomcat6上,而将http://localhost/tomcat7/ 链接地址转发到绑定了9090端口的tomcat7上,在实际应用中,我们都是转发到其他服务器IP地址上,而并非本机上的万web服务器,不过在IP资源紧缺或者端口限制的情况下,还是会将对应的链接代理到本地服务器上来。
–EOF–

Comments are closed.