Apache 重写子域名

Apache 重写子域名

我在 JBoss 上运行了 2 个应用程序,前面有一个 Apache 服务器。

这些应用程序当前正由 Apache 代理:

ProxyPass /App1 http://mydomain.com:8080/App1
ProxyPassReverse /App1 http://mydomain.com:8080/App1
ProxyPass /App2 http://mydomain.com:8080/App1
ProxyPassReverse /App1 http://mydomain.com:8080/App1

我有 2 个子域名:

 app1.mydomain.com
 app2.mydomain.com

所以我现在可以使用以下方式访问我的应用程序:

 http://app1.mydomain.com/App1
 http://app2.mydomain.com/App2

我如何配置 Apache,以便可以从以下位置提供这些应用程序:

 http://app1.mydomain.com
 http://app1.mydomain.com

是否可以使用 mod_rewrite 规则来做到这一点?

谢谢!

答案1

正确执行此操作的方法是在 apache 配置中设置几个 vhost,如下所示:

NameVirtualHost *:80 #only if this is not present earlier in httpd.conf

<VirtualHost *:80>
    ServerName: app1.mydomain.com
    ProxyPass http://mydomain.com:8080/App1
    ProxyPassReverse http://mydomain.com:8080/App1
</VirtualHost>

<VirtualHost *:80>
    ServerName: app2.mydomain.com
    ProxyPass http://mydomain.com:8080/App2
    ProxyPassReverse http://mydomain.com:8080/App2
</VirtualHost>

相关内容