服务器和浏览器通过在 。如果服务器未指定具体字符编码格式 使用 ,那么浏览器就无法知道每个字节代表的是什么字符。 字符编码声明 可以解决这个问题。
Lighthouse charset 审核失败的原因
灯塔 对未指定字符编码的网页进行标记:
如果 Lighthouse 发现以下任一情况,则会认为该字符编码已声明:
- 文档的
<head>中完全存在一个<meta charset>元素, 包含在文档的前 1024 个字节中 - 包含
charset指令的Content-TypeHTTP 响应标头,该指令与 有效的 IANA 名称 - 字节顺序标记 (BOM)
如何通过charset审核
向 HTML 中添加 <meta charset> 元素
在 HTML 文档的前 1024 个字节内添加 <meta charset> 元素。
元素必须完全包含在前 1024 个字节内。
最佳做法是将 <meta charset> 元素设为
文档的第 <head> 行。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
…
添加 Content-Type HTTP 响应标头
配置服务器以添加 Content-Type
包含 charset 指令的 HTTP 响应标头。
Content-Type: text/html; charset=UTF-8