使用 Apache 作为反向代理时的 ErrorDocument

Nic*_*ERO 6 reverse-proxy apache-2.2

'晚上,

我在同一台物理服务器上有一个 Apache 服务器(2.2.19)和一个 4D Webstar 服务器(有点未知的 HTTP 服务器)。Apache 仅侦听 SSL 端口 (443) 并用作 4DW 的反向代理(通过 SSL VHost)。

这是我使用的两个代理指令:

ProxyPass / http://127.0.0.1:xxxx/ timeout=15 connectiontimeout = 15
ProxyPassReverse / http://127.0.0.1:xxxx/
Run Code Online (Sandbox Code Playgroud)

鉴于4DW服务器有时会掉线,我想有一个自定义的503错误页面来通知用户后端应用程序的停机或维护。除了 Apache 从 /htdocs/(这是文档根目录)重定向所有内容,我们需要快速访问错误文档以在需要时对其进行编辑(因此,外部错误文档不是一种选择)。

有什么方法可以强制 Apache 不代理给定目录(假设是 htdocs/error/),或者有什么解决方案可以在 DocumentRoot 之外使用错误文档?

干杯

Sha*_*den 8

当然,只需将其从ProxyPass规则中排除即可。这些是按顺序评估的,因此请确保排除在最上面:

ErrorDocument 503 /error/503.html
ProxyPass /error/ !
ProxyPass / http://127.0.0.1:xxxx/ timeout=15 connectiontimeout = 15
ProxyPassReverse / http://127.0.0.1:xxxx/
Run Code Online (Sandbox Code Playgroud)

  • 为搜索者着想,我相信您实际上需要 `ProxyErrorOverride` 指令才能生效。 (3认同)

归档时间:

查看次数:

11067 次

最近记录:

13 年,7 月 前