proxypass 子域名错误

proxypass 子域名错误

我有一台安装了 Apache 2.4.7 和 Wildfly 8 的 Ubuntu Server 14.04。Apache 在前端运行,Wildfly 在后端运行。Apache 代理在 Wildfly 上运行的所有应用程序。

现在我尝试使用域 代理我的一个应用程序mysubdomain.example.com,但出现了不想要的副作用。它example.com/mysubdomain也会将自己添加到主域,这不是我想要的。首先,我将此配置添加到/etc/apache2/sites-available/000-default.conf

<VirtualHost *:80>
    ServerName mysubdomain.example.com
    ServerAlias www.mysubdomain.example.com
    ProxyPass / http://localhost:8080/myapp/
    ProxyPassReverse / http://localhost:8080/myapp/
</VirtualHost>

然后我在 SSH 中添加了相同的内容/etc/apache2/sites-available/ssl.conf

<VirtualHost *:443>
    SSLEngine on
    SSLCertificateFile /etc/ssl/certs/mysubdomain.mydomain.crt
    SSLCertificateKeyFile /etc/ssl/private/mysubdomain.mydomain.key

    ServerName mysubdomain.example.com
    ServerAlias www.mysubdomain.example.com

    ProxyPass / http://localhost:8080/myapp/
    ProxyPassReverse / http://localhost:8080/myapp/
</VirtualHost>

此配置确实不行像这样。我不得不添加另一个配置才能使其工作。我必须添加到/etc/apache2/apache2.conf

<Location "/myapp/">
    ProxyPass "http://localhost:8080/myapp/"
    ProxyPassReverse "http://localhost:8080/myapp/"
</Location>
<Location "/myapp">
    ProxyPass "http://localhost:8080/myapp"
    ProxyPassReverse "http://localhost:8080/myapp"
</Location>

这有效(好事):

http://mysubdomain.example.com
https://mysubdomain.example.com

随之而来的是(坏事):

http://example.com/mysubdomain

我必须做什么才能只影响subdomain而不向主域添加任何内容?

相关内容