在 Wildfly/Jboss 中部署 ear 期间如何防止 HTTP 404
How to prevent HTTP 404 during deployment of ear in Wildfly/Jboss
我们使用 WildFly 10 作为我们的应用服务器并通过 Docker 进行部署(WF 中的部署是普通的热部署)。我们没有使用 WildFly 的集群机制,只是在前面使用了负载平衡器 (HAProxys)。
问题是 WF 在 EAR 部署仍在进行时打开了它的 HTTP 端口。这(当然?)会导致我们不想在 LB 中专门处理的 HTTP 404 错误。这可能会导致假阴性...
有没有办法只在 EAR 成功启动后才允许 HTTP 连接?
或者是否可以用“503 服务不可用”替换“404 因为此处未部署任何内容”错误?这会更好地表达问题并且很容易在外部处理...
您可以为您所在的主机设置默认响应代码运行。
沿线的东西:
<host name="default-host" alias="localhost" default-response-code="503">
或在命令行中:
/subsystem=undertow/server=default-server/host=default-host:write-attribute(name=default-response-code, value=503)
对于您可能拥有的任何其他主机也是如此。
我们使用 WildFly 10 作为我们的应用服务器并通过 Docker 进行部署(WF 中的部署是普通的热部署)。我们没有使用 WildFly 的集群机制,只是在前面使用了负载平衡器 (HAProxys)。
问题是 WF 在 EAR 部署仍在进行时打开了它的 HTTP 端口。这(当然?)会导致我们不想在 LB 中专门处理的 HTTP 404 错误。这可能会导致假阴性...
有没有办法只在 EAR 成功启动后才允许 HTTP 连接?
或者是否可以用“503 服务不可用”替换“404 因为此处未部署任何内容”错误?这会更好地表达问题并且很容易在外部处理...
您可以为您所在的主机设置默认响应代码运行。
沿线的东西:
<host name="default-host" alias="localhost" default-response-code="503">
或在命令行中:
/subsystem=undertow/server=default-server/host=default-host:write-attribute(name=default-response-code, value=503)
对于您可能拥有的任何其他主机也是如此。