- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Apache启用modproxy做正向代理反向代理详细版
Apache启用mod_proxy做正向代理、反向代理如果没有apache没有安装proxy模块,可以不用重新编译添加模块。
cd /home/cpeasyapache/src/httpd-2.2.17/modules/proxy/usr/local/apache/bin/apxs -c -i mod_proxy.c proxy_util.c (ps 必须2个c一起编译,不然会报错)/usr/local/apache/bin/apxs -c -i mod_proxy_http.c proxy_util.c
apache提供了mod_proxy模块用于提供代理服务,能够支持的包括正向代理、反向代理、透明代理、缓存、负载均衡,HTTP代理、FTP代理、SSL代理等若干强大的功能。
通常我们使用的比较多的,是正向代理。也就是在浏览器的网络连接属性框中,填写上一个代理服务器的ip和端口,即可通过代理服务器中转,去浏览网页。
配置正向代理非常简单:
首先在apache上启用mod_proxy模块,需要注意的是,如果在apache-2.2上,则还需要加载名为mod_proxy_http的模块。因为2.2系列把代理功能都拆分成N个小模块了。
打开apache的conf,加入如下几行:(全局配置)
ProxyRequests OnProxyVia On
Order deny,allowDeny from allAllow from all
然后保存退出,重启加载apache服务:/etc/init.d/httpd restart或者做graceful也可以。 现在即可在浏览器的网络连接属性框中,填写上your_apache_server_ip的ip地址,端口是80,开始用代理了。
使用apache提供的代理,也可以加身份验证,或者设置ACL来限制客户端来源等。这些配置就和普通的apache站点配置一样。
配置反向代理就是个非常有用的功能。例如从某地访问google太慢,但是机房服务器上很快,则可在服务器上设置反向代理连接到google,也就是把google映射到服务器上来访问。
然后新建一个网站,即创建一个标准的配置段。这里我们将站点/google目录设置为google的反向代理。在这段里边,加入下边一内容:
ProxyRequests OffProxyPass /google /#ProxyPassReverse /google /
然后保存配置文件重新启动apache。现在即可使用浏览器来访问我的网站的/google目录。当打开这个目录的时候,会发现页面是google。点击google的下级页面,都可以正常的打开访问,而此时浏览器中的代理服务器并未设置任何内容——这就是反向代理。
通过反向代理,我们可以将web服务器放置在防火墙后,在web服务器前端使用mod_proxy配置反向代理,并打开apache的mod_cache缓存模块,更可以极大的提高对静态内容的访问性能。
在RewriteRule指令中使用[P]标记也可以:RewriteEngine OnRewriteRule ^/google/(.*) /$1 [P]
首先要做的事情是: 访问域名xxx - 通过 代理服务器B - 访问 服务器C
首页把域名 和指到自己的vps服务器确认自己的服务器中的Apache已经启用了proxymod和proxyhttp_mod,
sudo /etc/init.d/apache2 restart
然后在apache中增加站点
文件配置如下
ServerAdmin webmaster@ServerName ServerAlias ProxyRequests OffOrder deny,allowAllow from allProxyPreserveHost onProxyPass / /ProxyPassReverse / /然后:
sudo /etc/init.d/apache2 reload这样你就可以使用你的域名访问外面的服务器了
———————————————————————-
apache增加mod_cache模块参考链接:/Apache/ApacheMenu/mod/mod_cache.html/houdelei250/blog/item/b0428eb2b7dcda.htmlapache mod_cache模块的编译配apache mod_cache 后 /usr/local/apache/bin/apachectl restartapache出现以下信息:Cannot load /usr/local/apache/modules/mod_cache.so
文档评论(0)