在apache中设置基本Web代理

时间:2010-01-04 00:59:06

标签: apache proxy

我希望运行Apache作为Web开发的代理。我正在运行Mac OS X 10.5.4,它已经安装并运行了Apache 2.2.8。

我想将我的JavaScript文件(在我的机器上本地运行)指向:

http://localhost/test.php

会打到本地apache服务器,然后将该apache实例转发到我真正的远程服务器:

http://www.mysite.com/test.php

我看了一些演练,但它们似乎已经过时了。我想知道是否有最新的设置方法 - 这里的文档:

http://httpd.apache.org/docs/2.0/mod/mod_proxy.html

给出了一个基本的例子,但我不确定应该在哪里添加文本 - 到http.conf?我只是将其添加到那里,然后重新启动服务器吗?

由于

1 个答案:

答案 0 :(得分:34)

您描述的代理设置称为Reverse Proxy

使用mod_proxy模块可以很容易地在Apache中进行设置。

设置反向代理的基本mod_proxy指令是ProxyPass。您通常会将以下行添加到本地Apache配置文件中(通常为httpd.confapache2.conf):

ProxyPass     /remote/     http://www.mysite.com/

在这种情况下,浏览器会请求http://localhost/remote/test.php,但您的本地Apache服务器将通过充当http://www.mysite.com/test.php的代理来实现此目的。

您还需要确保在Apache配置文件中取消注释以下配置行:

LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so

确保在对配置文件进行任何更改后重新启动本地Apache服务。