แสดงเนื้อหาแบบคงที่ที่มีนโยบายแคชที่มีประสิทธิภาพ

การแคช HTTP จะช่วยเพิ่มความเร็วในการโหลดหน้าเว็บของคุณเมื่อเข้าชมซ้ำ

เมื่อเบราว์เซอร์ขอทรัพยากร เซิร์ฟเวอร์ที่ให้ทรัพยากรจะสามารถบอกเบราว์เซอร์ ระยะเวลาที่ควรจัดเก็บทรัพยากรหรือแคชทรัพยากรไว้ชั่วคราว สำหรับคำขอสำหรับทรัพยากรนั้นๆ ในครั้งต่อๆ ไป เบราว์เซอร์จะใช้สำเนาในตัวเครื่องแทนที่จะดึงมาจากเครือข่าย

วิธีที่การตรวจสอบนโยบายแคชของ Lighthouse ล้มเหลว

Lighthouse แจ้งทรัพยากรแบบคงที่ทั้งหมดที่ไม่ได้แคช

ภาพหน้าจอของเนื้อหาแบบคงที่ของ Lighthouse Serve ที่มีการตรวจสอบนโยบายแคชที่มีประสิทธิภาพ

Lighthouse พิจารณาว่าทรัพยากรแคชได้ หากเป็นไปตามเงื่อนไขทั้งหมดต่อไปนี้

  • ทรัพยากรอาจเป็นแบบอักษร รูปภาพ ไฟล์สื่อ สคริปต์ หรือสไตล์ชีต
  • ทรัพยากรมีรหัสสถานะ HTTP 200, 203 หรือ 206
  • ทรัพยากรไม่มีนโยบายว่าไม่ใช้แคชอย่างชัดแจ้ง

เมื่อหน้าเว็บไม่ผ่านการตรวจสอบ Lighthouse แสดงผลลัพธ์ในตารางโดยประกอบด้วย 3 คอลัมน์ ดังนี้

URL ตำแหน่งของทรัพยากรที่แคชได้
แคช TTL ระยะเวลาแคชปัจจุบันของทรัพยากร
ขนาดการโอน ข้อมูลโดยประมาณที่ผู้ใช้จะบันทึกไว้หากมีการแคชทรัพยากรที่มีการแจ้งว่าไม่เหมาะสม

วิธีการแคชทรัพยากรแบบคงที่โดยใช้การแคช HTTP

กำหนดค่าเซิร์ฟเวอร์ให้แสดงส่วนหัวการตอบกลับ HTTP Cache-Control ดังนี้

Cache-Control: max-age=31536000

คำสั่ง max-age จะบอกเบราว์เซอร์ว่าควรแคชแหล่งข้อมูลเป็นระยะเวลาเท่าใด โดยมีหน่วยเป็นวินาที ตัวอย่างนี้กำหนดระยะเวลาเป็น 31536000 ซึ่งสอดคล้องกับ 1 ปี 60 วินาที × 60 นาที × 24 ชั่วโมง × 365 วัน = 31536000 วินาที

คุณควรแคชเนื้อหาคงที่ที่เปลี่ยนแปลงไม่ได้เป็นเวลานาน เช่น 1 ปีขึ้นไป

ใช้ no-cache หากทรัพยากรมีการเปลี่ยนแปลงและความใหม่ที่สำคัญ แต่คุณก็ยังต้องการรับประโยชน์จากความเร็วของการแคชอยู่บ้าง เบราว์เซอร์ยังคงแคชทรัพยากรที่ตั้งค่าเป็น no-cache ไว้ แต่ต้องตรวจสอบกับเซิร์ฟเวอร์ก่อน เพื่อให้แน่ใจว่าทรัพยากรยังเป็นปัจจุบันอยู่

ระยะเวลาแคชนานขึ้นไม่ได้ดีเสมอไป สุดท้ายแล้ว คุณเป็นผู้ตัดสินใจว่าระยะเวลาแคชที่เหมาะสมสำหรับทรัพยากรของคุณนานเพียงใด

มีคำสั่งมากมายสำหรับการปรับแต่งวิธีที่เบราว์เซอร์ใช้แคชทรัพยากรต่างๆ ดูข้อมูลเพิ่มเติมเกี่ยวกับทรัพยากรการแคชใน แคช HTTP: คู่มือการป้องกันด่านแรกของคุณ และการกำหนดค่า Codelab เกี่ยวกับพฤติกรรมการแคช HTTP

วิธีตรวจสอบคำตอบที่แคชไว้ในเครื่องมือสำหรับนักพัฒนาเว็บใน Chrome

หากต้องการดูว่าเบราว์เซอร์กำลังได้รับทรัพยากรใดจากแคช ให้ทำดังนี้ เปิดแท็บเครือข่ายในเครื่องมือสำหรับนักพัฒนาเว็บใน Chrome

[ความคิดเห็น]: <> (รายการต่อไปนี้เป็นรหัสย่อจาก web.dev แต่ไม่ได้แปลจากภาษาอังกฤษในทุกภาษา) 1. กด Control+Shift+J (หรือ Command+Option+J ใน Mac) เพื่อเปิดเครื่องมือสำหรับนักพัฒนาเว็บ 2. คลิกแท็บเครือข่าย

คอลัมน์ขนาดใน Chrome DevTools จะช่วยยืนยันว่าทรัพยากรได้มีการแคชแล้ว

คอลัมน์ขนาด

Chrome ให้บริการทรัพยากรที่มีการร้องขอมากที่สุดจากแคชหน่วยความจำซึ่งรวดเร็วมาก แต่จะถูกล้างเมื่อเบราว์เซอร์ปิด

วิธียืนยันว่าได้ตั้งค่าส่วนหัว Cache-Control ของทรัพยากรตามที่คาดไว้แล้ว ตรวจสอบข้อมูลส่วนหัว HTTP

  1. คลิก URL ของคำขอใต้คอลัมน์ชื่อของตารางคำขอ
  2. คลิกแท็บส่วนหัว
การตรวจสอบส่วนหัว Cache-Control ผ่านแท็บส่วนหัว
ตรวจสอบส่วนหัว Cache-Control ผ่านแท็บ ส่วนหัว

คำแนะนำเฉพาะสแต็ก

Drupal

ตั้งค่าอายุสูงสุดของแคชของเบราว์เซอร์และพร็อกซีในการดูแลระบบ > การกำหนดค่า > การพัฒนา ดูแหล่งข้อมูลด้านประสิทธิภาพของ Drupal

Joomla

โปรดดูหัวข้อแคช

WordPress

ดูการแคชของเบราว์เซอร์

แหล่งข้อมูล