我在 Tomcat 中运行了一个 Web 应用程序http://<server>:8080/app/portal/
。我希望全世界都能通过 URL 看到这个应用程序http://<server>/portal/
。
为此,我使用 Apache 2.2 设置了一个反向代理。根据ProxyPass 的文档,我希望反向代理能够透明地传递所有请求。我的浏览器不应该知道 Tomcat URL。
这是我的配置:
没有虚拟主机,我将这些行添加到我的 httpd.conf
<Location /portal/>
AllowOverride All
RewriteEngine On
ProxyPass http://server:8080/app/portal/
ProxyPassReverse http://server:8080/app/portal/
</Location>
当我使用 Firefox 打开http://<server>/portal/
时,我得到一个 302 Moved Temporarily,所有后续调用都从我的浏览器直接转到http://<server>:8080/app/portal/
. 我的浏览器指向这个 URL。
这不是我对反向代理的期望。是我做错了配置还是我误解了反向代理的目的?我应该怎么做才能得到我想要的行为?