gpt4 book ai didi

apache - Servlet 重定向不适用于 Apache Tomcat + Apache 服务器的组合

转载 作者:行者123 更新时间:2023-11-28 23:35:50 25 4
gpt4 key购买 nike

我正在尝试在 tomcat 上运行的 servlet 中使用 response.sendRedirect,它从 apache 服务器接收来自浏览器的请求。因此,任何重定向都将 url 的“ip.ip.ip.ip”或“someurl.com”部分替换为“localhost:8080”(据我所知,这是因为 tomcat 将请求源标识为 apache 服务器地址) . request.getRequestURL 也受此问题影响。有没有什么办法可以解决这个问题,而无需编写响应实际应该进行重定向的 javascript block ?

最佳答案

简单的解决方案:在属性中配置基本 url(从浏览器的角度来看),然后将其用作重定向的基本 url。在这种情况下,您可以使用类似的东西:

response.sendRedirect(baseURLproperty + request.getRequestURI() + "?" + request.getQueryString())

更复杂的解决方案:由于您使用 apache 作为反向代理,您可以将其配置为使用原始 URL 添加自定义请求 header 。看:http://httpd.apache.org/docs/2.2/mod/mod_proxy.html

关于apache - Servlet 重定向不适用于 Apache Tomcat + Apache 服务器的组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24739395/

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