一个域Apache HTTPD下的Host 2应用

Host 2 application under one domain Apache HTTPD

我正在尝试配置 Apache HTTPD 2.4 以在同一台服务器上托管两个不同的应用程序。

App1 可通过端口 8080 访问 (Tomcat)

mysingledomain.com:8080

App2 可在端口 3030 上访问(Ruby [Dashing])

mysingledomain.com:3030

我想做的是分别以 mysingledomain.com/App1mysingledomain.com/App2

的形式到达他们

我的情况很像这个问题的开头:

这些都是 SPA 应用程序,但是当我没有 DocumentRoot 来分隔配置时,我对如何设置它感到很困惑。

我如何设置 HTTPD 以这种方式处理 HTTP 请求?

我能够通过以下配置将 ruby 应用程序配置为遵循子路径,但这会影响其他应用程序:

<VirtualHost *:80>
  ProxyRequests On # <---- WARNING DO NOT DO THIS
  ProxyVia On
  ProxyPreserveHost On
  RewriteEngine On

  ProxyPass "/app2"  "http://192.168.0.62:3030/" retry=0
  ProxyPassReverse "/app2/"  "http://192.168.0.62/"

  RewriteRule   "^/assets/(.*)"    "/app2/assets/"  [R]
  RewriteRule   "^/views/(.*)"    "/app2/views/"  [R]
</VirtualHost>

应该就这么简单:

<VirtualHost *:80>
  ServerName mysingledomain.com
  ProxyPreserveHost On

  ProxyPass /App1/  http://127.0.0.1:8080/
  ProxyPassReverse /App1/  http://127.0.0.1:8080/

  ProxyPass /App2/  http://127.0.0.1:3030/
  ProxyPassReverse /App2/  http://127.0.0.1:3030/
</VirtualHost>