我在 CentOs 2.6 上使用 apache2 2.2。
我需要配置我的 apache2 以允许我使用 wildfly 应用程序和源代码存储库。对于我的应用程序,我使用地址:domain.com,它会将我重定向到我的应用程序:localhost:8080/app1。使用链接 domain.com/repos/app1,我希望能够使用我的源代码存储库(localhost/repos/app1)。两个链接都使用端口 80。
通过以下配置,我可以使用我的应用程序,但无法访问我的存储库,因为对它的请求被重定向到我的 wildfly app1,当然那里显示“没有这样的页面”页面。
<VirtualHost *:80>
ServerName domain.com
ServerAlias www.domain.com domain.com
ProxyRequests Off
ProxyPreserveHost On
ProxyPass / http://localhost:8080/app1/
ProxyPassReverse / http://localhost:8080/app1/
RewriteEngine On
RewriteCond %{THE_REQUEST} /app1/
RewriteRule ^/app1/(.*)$ /$1 [PT]
</VirtualHost>
如何解决这个问题?
答案1
如果我理解正确的话,您希望从 2 个 URL 访问本地文件夹和在应用服务器上运行的应用。如果您使用 ProxyPass /,那么当您尝试访问 domain.com/repos 时,它将被代理到您的 wildfly 应用。domain.com/repos -> (wildfly)http://localhost:8080/app1/repos
您应该使用 domain.com/app1 访问您的应用,然后使用 domain.com/repos 访问您的存储库。这样您就不需要 URL
ProxyPass /app1 http://localhost:8080/app1/
ProxyPassReverse /app1 http://localhost:8080/app1/