ไม่มีการประกาศชุดอักขระหรือประกาศช้าเกินไปใน HTML

เซิร์ฟเวอร์และเบราว์เซอร์สื่อสารกันโดยการส่งไบต์ของข้อมูลผ่านอินเทอร์เน็ต หากเซิร์ฟเวอร์ไม่ได้ระบุรูปแบบการเข้ารหัสอักขระที่ใช้เมื่อส่งไฟล์ HTML เบราว์เซอร์จะไม่ทราบว่าแต่ละไบต์แสดงถึงอักขระใด ข้อกำหนดการประกาศการเข้ารหัสอักขระ ช่วยแก้ปัญหานี้ได้

สาเหตุที่การตรวจสอบ charset ของ Lighthouse ไม่สำเร็จ

Lighthouse จะแจ้งหน้าเว็บที่ไม่ได้ระบุการเข้ารหัสอักขระ

การตรวจสอบการเข้ารหัสอักขระที่ไม่ผ่าน

Lighthouse จะถือว่ามีการประกาศการเข้ารหัสอักขระหากพบรายการใดรายการหนึ่งต่อไปนี้

วิธีผ่านการตรวจสอบ charset

เพิ่มองค์ประกอบ <meta charset> ลงใน HTML

เพิ่มองค์ประกอบ <meta charset> ภายใน 1024 ไบต์แรกของเอกสาร HTML องค์ประกอบต้องอยู่ภายใน 1024 ไบต์แรกทั้งหมด แนวทางปฏิบัติแนะนำคือการทำให้องค์ประกอบ <meta charset> เป็นองค์ประกอบแรกใน <head> ของเอกสาร

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    …

เพิ่มส่วนหัวการตอบกลับ HTTP ของ Content-Type

กำหนดค่าเซิร์ฟเวอร์เพื่อเพิ่มContent-Type ส่วนหัวการตอบกลับ HTTP ที่มีคำสั่ง charset

Content-Type: text/html; charset=UTF-8

แหล่งข้อมูล