Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 总是丢弃响应正文上的mod_ProxyErrorOverride代理_Apache_Mod Proxy - Fatal编程技术网

Apache 总是丢弃响应正文上的mod_ProxyErrorOverride代理

Apache 总是丢弃响应正文上的mod_ProxyErrorOverride代理,apache,mod-proxy,Apache,Mod Proxy,我有一个问题,这可能只是一个基本的误解,这个功能是如何工作的,但还是想问。我正在尝试从代理模块启用ProxyErrorOverride指令,同时使用两个反向代理(一个位于根目录,一个位于/api)。我们希望能够返回4xx和5xx状态代码范围内的自定义错误页面(通过ErrorDocument指令)。但是,我们希望能够将一些状态代码作为从API显式发送的错误传递给web应用程序 在当前时刻,每当我打开ProxyErrorOverride指令时,我们确实会看到某些状态代码被路由到我们的通用错误页面,但

我有一个问题,这可能只是一个基本的误解,这个功能是如何工作的,但还是想问。我正在尝试从代理模块启用
ProxyErrorOverride
指令,同时使用两个反向代理(一个位于根目录,一个位于/api)。我们希望能够返回4xx和5xx状态代码范围内的自定义错误页面(通过
ErrorDocument
指令)。但是,我们希望能够将一些状态代码作为从API显式发送的错误传递给web应用程序

在当前时刻,每当我打开
ProxyErrorOverride
指令时,我们确实会看到某些状态代码被路由到我们的通用错误页面,但我们试图通过的状态代码(通过不声明ErrorDocument指令)似乎会返回正确的状态代码(例如:418)但是使用一个通用的apache响应主体,它会说一些类似于“418未知原因联系您的联系人”的话admin@domain.com..blah废话”

有没有办法告诉Apache我希望通过代理保留响应体,还是Apache总是放弃响应体

在某些情况下,我使用的是官方的2.4.33 httpd docker库,并且能够用最基本的Apache配置重现这种行为。我试着单步浏览一些源代码(我写的C代码不多),从中我可以看出,丢弃响应体可能是默认行为,唯一的重写是自定义响应

我想澄清一下。当
ProxyErrorOverride
指令设置为On时,是否可以传递错误消息

我看到这个帖子:


这似乎也意味着只有SSI响应可以通过上的ProxyErrorOverride提供。是否有任何文档或来源可以证实这一点?任何基于Apache的解决方案?

据我所知
ProxyErrorOverride
覆盖了从上述
400
来源收到的任何响应


不能排除特定的

您可能会认为,如果我不指定html覆盖(错误页面),那么让它与现有请求正文一起通过是有意义的。。不幸的是,你的发现是真实的,而且这本身没有“解决方案”。我们最终编写了自己的成功代码,将其视为一个“错误”,并对前端http客户端进行了追溯性更新,将该代码解释为一个错误,因此我们不必重构任何东西。