我希望运行 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?我是否只需将其添加到那里,然后重新启动服务器?
谢谢
最佳答案
您描述的代理设置称为 Reverse Proxy 。
通过使用 mod_proxy 在 Apache 中设置非常容易模块。
设置反向代理的基本 mod_proxy 指令是 ProxyPass。您通常会将以下行添加到本地 Apache 配置文件(通常是 httpd.conf
或 apache2.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 服务。
关于apache - 在 apache 中设置基本的 Web 代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1997001/