Answers:
它引用的是响应标题,而不是文档正文(“ Content-Type标记”)。
如果您使用任何HTTP调试器(例如Firefox 的Firebug的“网络”面板或Google Chrome / Internet Explorer / Safari / Opera中的“ 开发人员工具”的类似标签)来检查页面的响应标题,您将看到以下行:
Content-Type: text/html
同时,如果对此页面进行相同的检查,则会看到:
Content-Type: text/html; charset=utf-8
Page Speed是指缺少的部分。有了正确的出现在标题字符集确实会加快渲染页面位。在响应标头中指定了错误的字符集(或根本没有字符集)的情况下,浏览器需要扫描/解释页面,直到找到正确的字符集声明(该<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
行)为止,然后如果字符集与浏览器的字符集不同,则重新启动呈现过程。默认设置。
性能损失根本不是很大-对于用户而言,除非使用了真正的旧/慢硬件(尽管每个浏览器和浏览器版本都不同),否则它并不引人注意。也许还有其他与之直接相关的“惩罚”,但我个人没有意识到。
修复:如果您自己(在PHP脚本中)生成此标头,则需要对其进行更改以包括字符集。如果您的脚本不执行此类标头操作,则是服务器配置错误。
header('Content-type: text/html; charset=UTF-8');
。非常感谢!
curl --head $url
。默认字符集可以在Apache中通过添加AddDefaultCharset utf-8
到.htaccess之类的配置文件中来指定。
<meta charset="utf+8">
不够吗?