gpt4 book ai didi

jsp - 以 Nginx 作为反向代理的 tomcat Web 应用程序前端的上下文路径

转载 作者:行者123 更新时间:2023-11-28 21:49:46 24 4
gpt4 key购买 nike

我正在尝试在以 Nginx 为前端的 tomcat 服务器上部署一个 Web 应用程序。我遇到的问题是我的 jsp 页面中的标记打印出“不正确”(从 tomcat 的角度来看是正确的)上下文路径。

我在 tomcat 上的 Web 应用程序部署在上下文路径:/webApp1 中,tomcat 在端口 8080 上运行。因此可以通过 http://localhost:8080/webApp1 访问 Web 应用程序

我的nginx配置为proxy_pass如下:

location / {
http://localhost:8080/webApp1;
}

使用此配置,网络应用程序应该使用 url http://localhost

这仅适用于主页文本。主页加载成功,但主页上的所有链接都有/webApp1 前缀,因为 tomcat 认为它正在自行运行,因此输出上下文路径作为所有链接的前缀。

以前有没有人解决过这个问题。

非常感谢所有答案。

z.

最佳答案

我花了很多时间解决了这个问题。

nginx 有一个第三方模块 HttpSubsModule ,它允许您替换响应正文中的字符串(例如 html)。

因此可以通过以下方式解决问题:

location / {
http://localhost:8080/webApp1;
subs_filter_types text/html;
subs_filter '/webApp1' '';
}

它将从 html 响应中删除所有上下文 '/webApp1'。

希望这对遇到此问题的其他人也有帮助。

z.

关于jsp - 以 Nginx 作为反向代理的 tomcat Web 应用程序前端的上下文路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10429487/

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