gpt4 book ai didi

apache2 - 使用 Apache ProxyPass 的反向代理重定向而不是透明地传递

转载 作者:行者123 更新时间:2023-12-02 02:18:22 24 4
gpt4 key购买 nike

我在 Tomcat 中运行了一个 Web 应用程序 http://<server>:8080/app/portal/ 。我希望全世界通过 URL http://<server>/portal/ 看到这个应用程序.

为此,我使用 Apache 2.2 设置了反向代理。根据documentation for 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。

这不是我对反向代理的期望。我是否配置错误或者我误解了反向代理的目的?我应该怎么做才能获得我想要的行为?

最佳答案

您忘记在反向代理配置中添加以下选项:

ProxyPreserveHost On

您可以通过 URL 重写实现相同的行为,但文档中不建议这样做。

关于apache2 - 使用 Apache ProxyPass 的反向代理重定向而不是透明地传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10751427/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com