众所周知Apache是目前最优秀的HTTP服务器。实际上它不仅能当作服务器使用,也能够被用来架设代理服务器。本文就如何使用Apache架设HTTP代理服务器进行说明。

本文将基于Win32版的Apache 2.0.47进行说明。以前的Apache 1.x版配置方法稍有不同,但这里不作说明。

首先是Apache的安装。从

http://www.apache.org

上下载Apache的安装程序,双击安装程序进行安装。安装好之后屏幕右下方系统托盘中会出现一个红色的羽毛状图标,那就是Apache的控制程序。单击此图标以启动Apache服务器。这时打开IE并在IE的地址栏中输入

http://localhost/

应当能够看到Apache的欢迎画面。

接下来我们修改Apache的配置文件使其支持HTTP代理服务器功能。用文本编辑器打开httpd.conf文件。该文件位于Apache安装目

录的conf目录下。如果你在安装Apache的时候没有改变安装路径,那么它应当位于C:\Program Files\Apache

Group\Apache\conf\httpd.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 proxy_ftp_module modules/mod_proxy_ftp.so

去掉前面的#号使相应的模块生效。然后使用托盘中的Apache控制程序重新启动Apache。(也可以使用命令行net stop

apache2然后net start apache2命令进行服务器重启。)这时Apache应该能够正常启动,虽然现在它还不是代理服务器。

然后我们在配置文件中加入下面这一行:

ProxyRequests On

然后再次重新启动Apache。这时Apache就是HTTP代理服务器了。打开IE,,选择菜单“工具→Internet选项→连接→局域网设置

”,选中“为LAN使用代理服务器”,然后在下方的地址中填入127.0.0.1,端口填写80。填好之后确定,此时如果能够通过IE连接到

Internet,则说明代理配置正确无误。

(注:此处的端口80是httpd.conf中Listen指令指定的端口号。如果你修改了Listen命令使Apache监听其他端口,那么在IE的设

置中也请做相应的改变。另外,如果你使用拨号连接的话,那么请在“工具→Internet选项→连接”中修改相应的拨号连接的代理设置,而不要修改局域网

代理设置)

接下来我们尝试一下访问控制。编辑httpd.conf,加入下面的设置:

Order allow,deny

Allow from all

Deny from 127.0.0.1

此配置的意思是,允许除本地计算机之外的所有计算机访问代理。然后重新启动Apache。再次试图使用IE连接Internet,你会收到类似于下面的信息:

Forbidden

You don't have permission to access http://www.google.com/ on this server.

说明本地计算机已经被禁止使用代理。而相反地,下面的设置:

Order deny,allow

Deny from all

Allow from 127.0.0.1

的意思是,仅允许本地计算机使用代理服务器。

Apache配置代理服务器的方法(1)的更多相关文章

  1. Apache配置代理服务器的方法(2)

    Proxy指令后面的*号表示客户端使用代理服务器访问的目的地址.在上面两个例子中,*号表示所有地址,即禁止使用代理服务器访问所有地址.而如果想仅禁止某一些地址时,可以参考下面的例子: Order de ...

  2. 查看php和apache配置成功的方法

    PHP配置文件是php.ini  检查php是否配置成功,在wamp/www根目录写一个phpinfo.php文件,内容为 <?php phpinfo(); ?>  然后可以打开网页输入l ...

  3. XAMPP Apache 配置多端口和多域名方法

    我们在工作中经常遇到同时调试多个网站的情况,那么如何配置呢?就像平时访问网站一样,网站 a.com 与网站 b.com 截然不同.这都是常见现象,如果在局域网中要访问另外一台电脑上的多个网站,就需要使 ...

  4. CentOS 6.5安装配置LAMP服务器(Apache+PHP5+MySQL)的方法

    CentOS 6.5安装配置LAMP服务器(Apache+PHP5+MySQL)的方法 准备篇: 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A I ...

  5. CentOS 7.0 安装配置LAMP服务器方法(Apache+PHP+MariaDB)(转)

    转自:http://www.jb51.net/os/188488.html 作者:佚名 字体:[增加 减小] 来源:osyunwei  准备篇: CentOS 7.0系统安装配置图解教程 http:/ ...

  6. centos5.5用phpstudy一键安装配置虚拟主机后,yum配置代理服务器squid

    最近因为工作需要,开发站点需要在lamp环境下跑网站,于是在win7上跑虚拟机装了一个centos5.5的linux 并用集成环境配置了一个lamp环境,这里用的是phpstudy的一键安装包,并配置 ...

  7. 使用HttpClient配置代理服务器模拟浏览器发送请求调用接口测试

    在调用公司的某个接口时,直接通过浏览器配置代理服务器可以请求到如下数据: 请求url地址:http://wwwnei.xuebusi.com/rd-interface/getsales.jsp?cid ...

  8. Apache配置反向代理、负载均衡和集群(mod_proxy方式)

    Apache配置负载均衡和集群使用mod_jk的方式比较多,但是mod_jk已经停止更新,并且配置相对复杂.Apache2.2以后,提供了一种原生的方式配置负载均衡和集群,比mod_jk简单很多. 1 ...

  9. VisualSVN Server的配置和使用方法(转)

    1.为什么要用VisualSVN Server,而不用Subversion? 回答: 因为如果直接使用Subversion,那么在Windows 系统上,要想让它随系统启动,就要封装SVN Serve ...

随机推荐

  1. (转载)TCP/IP的三次握手与四次挥手

    TCP三次握手   所谓三次握手(Three-way Handshake),是指建立一个TCP连接时,需要客户端和服务器总共发送3个包.   三次握手的目的是连接服务器指定端口,建立TCP连接,并同步 ...

  2. Mac 在命令行中获得Root权限

    Mac 在命令行中获得Root权限 作者 firedragonpzy 13 九月, 2012 2条评论 本文为firedragonpzy原创,转载务必在明显处注明:转载自[Softeware MyZo ...

  3. Nbimer族助手 部分控件不能用的解决方法(转)

    用户提出的问题现象: 我两天笔记本安装的都是win7 SP1系统,一台为64为一台为32位,网络环境是移动宽带通过D-Link路由器实现无线局域网,DHPC自动分配IP地址.每次打开IE或者Chrom ...

  4. [分享] 从定制Win7母盘到封装详细教程 By BILL ( 10月23日补充说明 )

    [分享] 从定制Win7母盘到封装详细教程 By BILL ( 10月23日补充说明 ) billcheung 发表于 2011-10-23 00:07:49 https://www.itsk.com ...

  5. ReadOnly关键字修饰的变量可以修改,只是不能重新分配

    MSDN 官方的解释 readonly 关键字是可以在字段上使用的修饰符.当字段声明包括 readonly 修饰符时,该声明引入的字段赋值只能作为声明的一部分出现,或者出现在同一类的构造函数中.   ...

  6. 编译osg的一个错误

    C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets! 提示找不到CMAKELIST.T ...

  7. nginx rewrite 指令last break区别最详细的解释

    转自:http://blog.sina.com.cn/s/blog_4f9fc6e10102ux0w.html http://blog.cafeneko.info/2010/10/nginx_rewr ...

  8. 0525Scrum项目7.0

    一.Spring1回顾: 在这第一个冲刺中,我们主要是完成了主界面的建立,过程虽然有些曲折,大家有时候找的素材.图片都有一些冲突,但是最后我们还是求同存异,努力地做好界面! 在这一个冲刺中,我们虽然算 ...

  9. linux 的 磁盘操作

    //显示目录和文件 以kb m g为单位 du -ah //总大小 du -sh /etc //查看分区 fdisk -l //对磁盘进行分区 fdisk /dev/sdb //格式化分区 mkfs ...

  10. System.exit(0)作用

    System.exit(0)作用   public class HelloGoodbye{ try{ System.out.println(“Hello World”); System.exit(0) ...