我在我继承的一些PHP代码中遇到过这一行:
header('Content-Encoding: ', true);
查看内容编码的MDN文档“true”不是有效值。它期待像gzip或deflate这样的东西,不是真的。
我也看了,如果将此设置为true,我在PHP中看不到任何特殊行为。
但是在代码中我看这行有以下效果:它使正在输出的文件被压缩。它还向http响应头添加了一个空的Content-Encoding标头。后者我理解 - 前者不是。
这里有一些互动,使用PHP的ob_gzhandler()已被调用,并且已经正确地将Content-Encoding标头正确地设置为gzip。
如果我注释掉这一行,那么该文件不会压缩。
似乎正在发生的事情是:
ob_gzhandler()
将Content-Encoding标头设置为gzip。然后是后续行:header('Content-Encoding: ', true)
- 在ob_end_clean()
之后调用以某种方式启用先前设置 - 但如果没有这个,ob_gzhandler的先前设置不会被“激活”。这有意义吗?
基本上 - 为什么有人想要这样做:
header('Content-Encoding: ', true);?