我正在编写一个(PHP)脚本,为客户端提供文件。其中,Content-Length 标头被发送,只是它有一个字节太多。当我将内容长度放在不同的标头中时,我发现了这一点,并比较了两者:
$filesize = filesize($file);
header('Content-Length: ' . $filesize);
header('X-Content-Length: ' . $filesize);
结果:
Content-Length: 3481
X-Content-Length: 3480
即使硬编码3480
到header()
函数中,结果也是如此。我怀疑 Apache 对我的标题这样做了。
这可能是什么原因造成的?
编辑:给出一些上下文:我认为 Zend Framework 导致了这个:我正在将当前正在生产(和工作)的代码重构到出现问题的 ZF。当我在 ZF 之外尝试这段代码时,一切都很好。也许 ZF 正在做输出缓冲,并重新发送标头本身或其他东西,但我不太了解 ZF。