在 PHP 中提供 WOFF 文件时出错 - file_get_contents 与读取文件



我正在尝试在PHP中提供WOFF字体文件。

首先,我设置内容类型标头:

header("Content-Type: application/font-woff");

然后我尝试以下操作:

这工作正常(文件已正确提供给用户,并且内容长度标头与文件大小匹配(:

readfile("path/to/font.woff");

但事实并非如此(脚本完成时没有错误,但我在浏览器中收到"八位字节流"错误,并且 Content-Length 标头为 0(:

echo file_get_contents("path/to/font.woff");

为什么我在使用 file_get_contents 时收到错误?我正在使用 Windows 10、IIS Express 10 和 PHP 7.2

您应该检查服务器日志和log_level。 如果读取文件时出错,file_get_contents返回 false。我现在测试了它,echo(false)返回一个空字符串。在这种情况下,响应正文将为空(内容长度为 0(。

file_get_content失败的原因可能是路径不正确,或者文件内容无法解释为字符串。File_get_contents尝试从文件中创建一个字符串。可能是,这不适用于 woff 文件。但我对此并不嘘寒问暖。您应该检查日志(E_WARNING日志级别(。

相关内容

最新更新