随意的HTTP状态代码会用PHP阻塞Apache

随意的HTTP状态代码会用PHP阻塞Apache,php,apache,http-response-codes,Php,Apache,Http Response Codes,因此,我正在构建一个rest服务,有人建议我们返回“自定义状态代码”,如299或任何我们需要的代码。我知道没有这样的代码实际上是有效的,但是因为它是在内部使用的,所以这不重要 一切顺利,直到阿帕奇窒息。我运行以下任一Apache返回500错误: http_response_code(299); // OR header("HTTP/1.1 299 Crazy Request Dude", true, 299); // OR header(" ", false, 299); Apache不喜欢我

因此,我正在构建一个rest服务,有人建议我们返回“自定义状态代码”,如299或任何我们需要的代码。我知道没有这样的代码实际上是有效的,但是因为它是在内部使用的,所以这不重要

一切顺利,直到阿帕奇窒息。我运行以下任一Apache返回500错误:

http_response_code(299);
// OR
header("HTTP/1.1 299 Crazy Request Dude", true, 299);
// OR
header(" ", false, 299);
Apache不喜欢我的状态码吗?我能让它提交吗


最困难的部分是Apache没有在其错误日志中放入任何与错误相关的内容。如果我删除了自定义状态代码,一切正常。

您使用的是什么Apache版本?这是一个好问题:)“Apache 2.2.3版”我有Apache 2.4.6,一切正常。我可以发送自定义响应代码。可悲的是,我不能轻易地降级到2.2,但谷歌确实存在少量类似的问题,所以我认为它对其他人有效。我能找到的是mod_proxy的一个bug,当使用自定义状态代码时,它可以输出
500
状态代码。你在使用mod_代理吗?很好。mod_代理已启用,但未用于任何用途。在给定的bug中,他们使用代理服务器作为负载平衡器。您是否尝试过将其关闭?您使用的是mod_php、fastcgi还是其他?