【发布时间】:2011-11-27 03:26:16
【问题描述】:
我正在使用带有 mod-proxy 的 Apache 2.2,并且我已经使用几个 ProxyPass 语句对其进行了配置,以从远程 URL 代理到本地 URL。我需要为这些代理 URL 从 Apache 返回自定义错误文档,因此我在我的 mod-proxy 配置中设置“ProxyErrorOverride On”以及一些 ErrorDocument 指令(带有本地 URL 路径)以返回一些 HTTP 状态代码的自定义错误页面兴趣。但是,当返回一个我没有为其创建 ErrorDocument 指令的状态代码时,Apache 会将响应正文替换为默认错误页面,而不是保留原始响应正文。这不适用于应用程序。所以我真的有两个问题:
1) 如果我没有为特定状态代码定义 ErrorDocument 覆盖,是否可以将 Apache 配置为保留原始响应主体不变?
2) 是否可以让 ProxyErrorOverride 指令仅适用于我的 ProxyPass 语句中的某些 URL?
【问题讨论】:
-
恐怕答案是:不,不。如果指令可以限制在一个位置、目录或 URL 集,那么手册页的“上下文”部分中会有一些内容:httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxyerroroverride