如何将一个虚拟主机指向在同一台机器上的另一个端口上运行的另一个 apache 实例?

如何将一个虚拟主机指向在同一台机器上的另一个端口上运行的另一个 apache 实例?

我的机器上运行着两个 apache2 实例。其中一个带有 bitnami redmine 堆栈,其唯一目的是在 host:8080/redmine 上托管 Redmine。另一个 apache 实例正在使用 php 等运行,我在其中指定了我域的所有 VHost。

现在我想将 redmine.somedomain.com 指向 www.somedomain.com:8080/redmine,以便可以通过子域和端口 80 访问 redmine。Redmine 是一个 Ruby on Rails 应用程序并与 Phusion Passenger 一起运行,所以我不能只将 vhost 指向 redmine 安装的 htdocs 目录。

这是怎么做到的?我尝试过 ProxyPass 和 ProxyPassReverse,但就是无法让它工作。

非常感谢所有的帮助。

答案1

这对于基本应用程序来说很有用。我不熟悉 redmine,所以我不确定这是否可行。

ProxyRequests Off

<Proxy *>
    Order deny,allow
    Allow from all
</Proxy>

<VirtualHost redmine.example.com:80>
    ProxyPass / http://localhost:8080/redmine
    ProxyPassReverse / http://localhost:8080/redmine
</VirtualHost>

有关更多信息运行反向代理如果您的应用程序不喜欢此配置。当 Web 应用程序对 HTTP 标头或传入请求的类似方面挑剔时,有时会发生这种情况。

相关内容