เซิร์ฟเวอร์และเบราว์เซอร์สื่อสารกันโดยการส่งไบต์ของข้อมูลผ่านอินเทอร์เน็ต หากเซิร์ฟเวอร์ไม่ได้ระบุรูปแบบการเข้ารหัสอักขระที่ใช้เมื่อส่งไฟล์ HTML เบราว์เซอร์จะไม่ทราบว่าแต่ละไบต์แสดงถึงอักขระใด ข้อกำหนดการประกาศการเข้ารหัสอักขระช่วยแก้ปัญหานี้ได้
องค์ประกอบ <meta charset> ที่อยู่ท้ายเอกสาร (องค์ประกอบที่ไม่ได้อยู่ใน 1024 ไบต์แรกของเอกสารทั้งหมด) อาจส่งผลต่อประสิทธิภาพการโหลดอย่างมาก เนื่องจากเบราว์เซอร์จะถือว่ามีการเข้ารหัสอักขระแบบหนึ่ง และหากพบในภายหลังว่าเบราว์เซอร์เข้าใจผิด ก็จะต้องเริ่มแยกวิเคราะห์ HTML อีกครั้งตั้งแต่ต้น
วิธีส่งต่อข้อมูลเชิงลึกนี้
ข้อมูลเชิงลึกจะพิจารณาว่าควรประกาศการเข้ารหัสอักขระหรือไม่หากพบรายการต่อไปนี้
- องค์ประกอบ
<meta charset>ใน<head>ของเอกสารที่อยู่ใน 1024 ไบต์แรกของเอกสารโดยสมบูรณ์ Content-Typeส่วนหัวการตอบกลับ HTTP ที่มีคําสั่งcharsetซึ่งตรงกับชื่อ IANA ที่ถูกต้อง
คุณต้องตั้งค่าเพียง 1 รายการจากรายการเหล่านี้เพื่อส่งข้อมูลเชิงลึก
เพิ่มองค์ประกอบ <meta charset> ลงใน HTML
เพิ่มองค์ประกอบ <meta charset> ภายใน 1024 ไบต์แรกของเอกสาร HTML องค์ประกอบต้องอยู่ภายใน 1024 ไบต์แรกทั้งหมด แนวทางปฏิบัติแนะนำคือการทําให้องค์ประกอบ <meta charset> เป็นองค์ประกอบแรกใน <head> ของเอกสาร
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
…
เพิ่มส่วนหัวการตอบกลับ HTTP ของ Content-Type
กำหนดค่าเซิร์ฟเวอร์เพื่อเพิ่มส่วนหัวการตอบกลับ HTTP ของ Content-Type ที่มีคำสั่ง charset
Content-Type: text/html; charset=UTF-8