ไฟล์ robots.txt
จะบอกเครื่องมือค้นหาว่าเข้าหน้าใดในเว็บไซต์ได้
รวบรวมข้อมูล การกำหนดค่า robots.txt
ที่ไม่ถูกต้องอาจทำให้เกิดปัญหา 2 ประเภทดังนี้
- วิธีนี้สามารถป้องกันไม่ให้เครื่องมือค้นหาทำการ Crawl หน้าเว็บสาธารณะ ซึ่งทำให้ เนื้อหาให้ปรากฏในผลการค้นหาน้อยลง
- อาจทำให้เครื่องมือค้นหารวบรวมข้อมูลหน้าที่คุณอาจไม่ต้องการให้แสดงในการค้นหา ผลลัพธ์
วิธีที่การตรวจสอบ robots.txt
ของ Lighthouse ล้มเหลว
แฟล็ก Lighthouse ไม่ถูกต้อง
robots.txt
ไฟล์:
ขยายการตรวจสอบ robots.txt
ไม่ถูกต้องในรายงาน
เพื่อดูว่าเกิดอะไรขึ้นกับ robots.txt
ของคุณ
ข้อผิดพลาดที่พบบ่อย ได้แก่
No user-agent specified
Pattern should either be empty, start with "/" or "*"
Unknown directive
Invalid sitemap URL
$ should only be used at the end of the pattern
Lighthouse ไม่ตรวจสอบว่าไฟล์ robots.txt
ของคุณ
ในตำแหน่งที่ถูกต้อง เพื่อให้ทำงานได้อย่างถูกต้อง ไฟล์ต้องอยู่ในรูทของ
โดเมนหรือโดเมนย่อยของคุณ
วิธีแก้ปัญหาเกี่ยวกับ robots.txt
ตรวจสอบว่า robots.txt
ไม่ได้แสดงผลรหัสสถานะ HTTP 5XX
หากเซิร์ฟเวอร์ของคุณแสดงผลข้อผิดพลาดเกี่ยวกับเซิร์ฟเวอร์ (รหัสสถานะ HTTP)
ในช่วงทศวรรษ 500) สำหรับ robots.txt
เครื่องมือค้นหาจะไม่ทราบว่าหน้าเว็บใดควรจะเป็น
ทำการ Crawl แล้ว คุกกี้อาจหยุดทำการ Crawl ทั้งเว็บไซต์ ซึ่งจะช่วยป้องกันไม่ให้
เนื้อหาจากการจัดทำดัชนี
หากต้องการตรวจสอบรหัสสถานะ HTTP ให้เปิด robots.txt
ใน Chrome และ
ตรวจสอบคำขอในเครื่องมือสำหรับนักพัฒนาเว็บใน Chrome
รักษา robots.txt
ให้เล็กกว่า 500 KiB
เครื่องมือค้นหาอาจหยุดประมวลผล robots.txt
ในระหว่างที่คุณดำเนินการหากไฟล์
ใหญ่กว่า 500 KiB ซึ่งอาจทำให้เครื่องมือค้นหาสับสน และนำไปสู่
จากเว็บไซต์ของคุณ
หากต้องการให้ robots.txt
มีขนาดเล็ก ให้ลดโฟกัสที่หน้าเว็บที่ยกเว้นทีละหน้าและอื่นๆ
ในรูปแบบที่กว้างกว่า เช่น ถ้าคุณต้องการบล็อกการรวบรวมข้อมูลไฟล์ PDF
ไม่จำกัดแต่ละไฟล์ แต่ไม่อนุญาต URL ทั้งหมดที่มี
.pdf
โดยใช้ disallow: /*.pdf
แก้ไขข้อผิดพลาดของรูปแบบ
- เฉพาะบรรทัดว่าง ความคิดเห็น และคำสั่งที่ตรงกับ "name: ค่า" ได้แก่
อนุญาตใน
robots.txt
- ตรวจสอบว่าค่า
allow
และdisallow
ว่างเปล่าหรือเริ่มต้นด้วย/
หรือ*
- อย่าใช้
$
อยู่ตรงกลางของค่า (เช่นallow: /file$html
)
ตรวจสอบว่ามีค่าสำหรับ user-agent
ชื่อ User Agent เพื่อบอกโปรแกรมรวบรวมข้อมูลของเครื่องมือค้นหาว่าควรทำตามคำสั่งใด คุณ
ต้องระบุค่าสำหรับแต่ละอินสแตนซ์ของ user-agent
เพื่อให้เครื่องมือค้นหาทราบ
จะทำตามชุดคำสั่งที่เกี่ยวข้องหรือไม่
หากต้องการระบุโปรแกรมรวบรวมข้อมูลสำหรับเครื่องมือค้นหาเฉพาะ ให้ใช้ชื่อ User-agent จาก รายการที่เผยแพร่ (ตัวอย่างเช่น นี่คือ รายการ User Agent ของ Google ที่ใช้สำหรับการรวบรวมข้อมูล)
ใช้ *
เพื่อจับคู่โปรแกรมรวบรวมข้อมูลทั้งหมดที่ไม่ตรงกัน
user-agent: disallow: /downloads/
ไม่ได้กำหนด User Agent
user-agent: * disallow: /downloads/ user-agent: magicsearchbot disallow: /uploads/
มีการกำหนด User Agent ทั่วไปและ User Agent ของ magicsearchbot
ตรวจสอบว่าไม่มีคำสั่ง allow
หรือ disallow
ก่อนวันที่ user-agent
ชื่อ User Agent กำหนดส่วนต่างๆ ของไฟล์ robots.txt
เครื่องมือค้นหา
โปรแกรมรวบรวมข้อมูลจะใช้ส่วนเหล่านี้เพื่อกำหนดคำสั่งที่ต้องปฏิบัติตาม การวาง
ก่อนชื่อ User-agent แรกหมายความว่าโปรแกรมรวบรวมข้อมูลจะไม่ติดตาม
ได้
# start of file disallow: /downloads/ user-agent: magicsearchbot allow: /
โปรแกรมรวบรวมข้อมูลของเครื่องมือค้นหาจะไม่อ่านคำสั่ง disallow: /downloads
# start of file user-agent: * disallow: /downloads/
เครื่องมือค้นหาทั้งหมดไม่ได้รับอนุญาตให้ทำการ Crawl โฟลเดอร์ /downloads
โปรแกรมรวบรวมข้อมูลของเครื่องมือค้นหาจะทำตามคำสั่งในส่วนที่มี
ชื่อ User Agent ที่ระบุ เช่น หากคุณมีคำสั่งสำหรับ
user-agent: *
และ user-agent: Googlebot-Image
Googlebot Images จะ
ทำตามคำแนะนำในส่วน user-agent: Googlebot-Image
ระบุ URL ที่สมบูรณ์สำหรับ sitemap
ไฟล์แผนผังไซต์ วิธีที่ดีในการบอกให้เครื่องมือค้นหาทราบเกี่ยวกับหน้าต่างๆ ในเว็บไซต์ของคุณ โดยทั่วไปไฟล์แผนผังเว็บไซต์จะมีรายการ URL ในเว็บไซต์ของคุณ พร้อมด้วยข้อมูลเกี่ยวกับเวลาล่าสุดที่เกิดขึ้น มีการเปลี่ยนแปลง
หากคุณเลือกที่จะส่งไฟล์ Sitemap ใน robots.txt
โปรด
ใช้ URL ที่สมบูรณ์
sitemap: /sitemap-file.xml
sitemap: https://example.com/sitemap-file.xml