为啥Tomcat版本9.0.44返回错误503
Posted
技术标签:
【中文标题】为啥Tomcat版本9.0.44返回错误503【英文标题】:Why does Tomcat Version 9.0.44 returns error 503为什么Tomcat版本9.0.44返回错误503 【发布时间】:2021-07-17 05:28:08 【问题描述】:我们在 Windows 10 机器上从 Tomcat 9.0.29 升级到 9.0.44 并收到 503 错误消息。 Tomcat 托管一个 Java 应用程序。对 Tomcat 服务器的请求作为工作线程从单独的 Apache 代理服务器通过端口 8010 发送。我可以看到 Tomcat 服务正在运行,并且 Java 应用程序已启动并正在运行。这可以从 Tomcat 服务器上的 //localhost:8080/JavaApp 进行验证。
但是,来自 Apache 服务器的请求返回为 503 服务不可用 由于维护停机或容量问题,服务器暂时无法满足您的请求。请稍后再试。
9.0.29 版运行良好。将所有配置文件从 9.0.29 复制到 9.0.44 安装目录。
知道为什么会出现 503 错误吗??
【问题讨论】:
【参考方案1】:此问题已解决。 Tomcat 版本 9.0.44 在其配置中需要新的(默认)参数“secretRequired”和“secret”。 使用 AJP 代理连接。
此外,对 Tomcat 的代理转发请求现在需要: worker..secret=blahblah 之前 Tomcat 将服务来自另一台机器的请求。
此处概述:https://www.linuxquestions.org/questions/linux-server-73/new-java-tomcat-upgrade-giving-503-error-on-browser-and-mod_jk-unable-to-connect-4175688649/
【讨论】:
【参考方案2】:复制配置文件很可能是您的问题。 永远不要在升级时这样做。
相反,请分析您在 9.0.29 的配置中所做的更改,并在 9.0.44 的默认配置上重复这些更改。另外,请查看更改日志,因为可能有一些更新默认值的提示。
您的问题没有提供有关您的配置的任何提示,因此只能对根本原因进行疯狂的猜测。事实上,我已经投票关闭“需要调试信息”,例如minimal reproducible example
我知道的一个变化是 AJP 连接器需要与以前不同的配置,但我什至不知道您是使用 AJP 还是 HTTP 进行代理。即使这解决了您的直接问题,您仍然应该查看整个变更日志。
【讨论】:
以上是关于为啥Tomcat版本9.0.44返回错误503的主要内容,如果未能解决你的问题,请参考以下文章
为啥AWS弹性beantalk滚动版本更新仍然有503s的2分钟停机时间?