简单的 Apache2 反向代理配置不起作用

简单的 Apache2 反向代理配置不起作用

我已经在 2 个 ubuntu 11.10 VM 上安装了 Apache2,并且正在尝试使一个非常基本的反向代理运行。

我在每个站点上都只设置了默认站点。我想转到http://server.com/app并让它返回http://app.internal.server.com/

从我读过的内容来看,这应该是相当简单的,但我没有使用 Apache 的经验,所以我可能遗漏了一些东西!

例如,我没有在 Apache 上设置任何东西(ProxyPass 指令除外)来告诉它有关的任何信息/app

我启用了 mod_proxy,apache2ctl mod_proxy并将以下内容添加到 httpd.conf,然后重新启动 apache2:

ProxyRequests Off
ProxyPreserveHost On
<Proxy *>
    Order allow,deny
    Allow from all
</Proxy>
ProxyPass /app/ http://app.internal.server.com/
ProxyPassReverse /app/ http://app.internal.server.com/

在 apache2 中error.log我看到:

File does not exist: /var/www/app

答案1

您需要将代理配置放在默认<VirtualHost>块中/etc/apache2/sites-available/default

顺便说一下,大多数配置都是无效的 - 您所需要的只是ProxyPass/ProxyPassReverse以及潜在的ProxyPreserveHost(如果后端服务器需要的话)。

相关内容