一个域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/App1
和 mysingledomain.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>
我正在尝试配置 Apache HTTPD 2.4 以在同一台服务器上托管两个不同的应用程序。
App1 可通过端口 8080 访问 (Tomcat)
mysingledomain.com:8080
App2 可在端口 3030 上访问(Ruby [Dashing])
mysingledomain.com:3030
我想做的是分别以 mysingledomain.com/App1
和 mysingledomain.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>