![Apache - 通过调整错误严格性来允许格式错误的标头实现向后兼容?](https://linux22.com/image/681465/Apache%20-%20%E9%80%9A%E8%BF%87%E8%B0%83%E6%95%B4%E9%94%99%E8%AF%AF%E4%B8%A5%E6%A0%BC%E6%80%A7%E6%9D%A5%E5%85%81%E8%AE%B8%E6%A0%BC%E5%BC%8F%E9%94%99%E8%AF%AF%E7%9A%84%E6%A0%87%E5%A4%B4%E5%AE%9E%E7%8E%B0%E5%90%91%E5%90%8E%E5%85%BC%E5%AE%B9%EF%BC%9F.png)
我们将网站从 Apache 2.2 迁移到 2.4(PHP 版本相同),现在代码运行正常,但由于以下原因,出现了 500 错误:[core:error] [pid ######] [client ##.##.##.##:#####] malformed header from script 'index.php': Bad header:
我们确定了代码中发送错误标头的问题,并可以修复它,但如果我们想让遗留代码在我们计划迁移的各个站点上出现其他问题时不被破坏,有没有办法告诉 Apache 不要因此而失败?比如,我们可以降低它关心的错误的严格性吗?
答案1
这个问题很老了,但它可能会帮助其他人。你需要寻找
HttpProtocolOptions Unsafe
默认值是“严格”,但将其更改为“不安全”将允许格式错误的标头,但它也被视为“不安全”。
这需要进入 httpd.conf,例如在 centos 上进入 /etc/httpd/conf/httpd.conf