ทบทวนความรู้เรื่อง Robots: robots.txt — วิธีที่ยืดหยุ่นในการควบคุมวิธีที่เครื่องสำรวจเว็บไซต์

วันศุกร์ที่ 7 มีนาคม 2025

ไฟล์ robots.txt เป็นเครื่องมือที่เจ้าของเว็บไซต์ใช้มากันอย่างยาวนานมากกว่า 30 ปีแล้ว รวมถึงได้รับการรองรับอย่างกว้างขวางจากผู้ให้บริการ Crawler (เช่น เครื่องมือสําหรับเจ้าของเว็บไซต์ บริการ และเครื่องมือค้นหา) ในซีรีส์ "ทบทวนความรู้เรื่อง Robots" ครั้งนี้ เราจะเจาะลึกเรื่อง robots.txt ซึ่งเป็นวิธีที่ยืดหยุ่นในการบอกให้โรบ็อตทํา (หรือไม่ทํา) สิ่งใดในเว็บไซต์

เริ่มต้นใช้งาน robots.txt

การทำงานของไฟล์เหล่านี้นั้นง่ายมาก คุณสร้างไฟล์ข้อความชื่อ "robots.txt" แล้วอัปโหลดไปยังเว็บไซต์ และหากใช้ระบบจัดการเนื้อหา (CMS) ก็อาจง่ายกว่านั้น คุณจะปล่อยให้ไฟล์ robots.txt ว่างเปล่า (หรือไม่มีเลย) ก็ได้หากต้องการให้ทำการ Crawl เว็บไซต์ทั้งเว็บไซต์ หรือจะเพิ่มกฎเพื่อจัดการการ Crawl ก็ได้ ตัวอย่างเช่น หากต้องการบอกบ็อตทั้งหมด (หรือที่เรียกว่า Crawler, โรบอท, สไปเดอร์) ไม่ให้เข้าถึงหน้า "เพิ่มลงในรถเข็น" ก็ให้เขียนข้อมูลนี้ในไฟล์ robots.txt

user-agent: *
disallow: /cart

สิ่งที่ทําได้มากขึ้นอย่างเจาะจงด้วย robots.txt

robots.txt เป็นเครื่องมืออเนกประสงค์ที่แสดงสิ่งที่คุณต้องการให้หุ่นยนต์แต่ละตัวทําหรือไม่ทําในเว็บไซต์ ซึ่งอาจเป็นเพียงไม่กี่บรรทัด หรือจะซับซ้อนด้วยกฎที่ซับซ้อนมากขึ้นซึ่งกำหนดเป้าหมายไปยังรูปแบบ URL ที่เฉพาะเจาะจงมากก็ได้ คุณสามารถใช้ไฟล์ robots.txt เพื่อแก้ปัญหาทางเทคนิค (เช่น หน้าเว็บที่มีการแบ่งหน้าที่ไม่จำเป็น) หรือเหตุผลด้านบรรณาธิการหรือเหตุผลส่วนตัว (เช่น เพียงไม่ต้องการให้ทำการ Crawl อะไรบางอย่าง) ตัวอย่างเช่น คุณสามารถทำสิ่งต่อไปนี้ได้

แจ้งกฎเดียวกันให้บ็อตหลายตัวทราบ (แต่ไม่ใช่ทั้งหมด)

กลุ่มนี้บอกทั้ง examplebot และ otherbot ให้หลีกเลี่ยงเส้นทาง /search

user-agent: examplebot
user-agent: otherbot
disallow: /search

บอกให้บ็อตหนึ่งหลีกเลี่ยงเส้นทางที่มีข้อความบางส่วน

เช่น คุณอาจบอก documentsbot ไม่ให้ทำการ Crawl ไฟล์ที่มี ".pdf" ในชื่อ

user-agent: documentsbot
disallow: *.pdf

บอกบ็อตว่าสามารถทำการ Crawl บล็อกได้ แต่ไม่อนุญาตให้ทำการ Crawl ฉบับร่าง

user-agent: documentsbot
allow: /blog/
disallow: /blog/drafts/

บล็อก Crawler บางตัวไม่ให้เข้าถึงส่วนใดส่วนหนึ่งของเว็บไซต์ ขณะที่อนุญาตให้ Crawler อื่นๆ เข้าถึงเว็บไซต์ได้

ไฟล์ robots.txt นี้ไม่อนุญาตให้ aicorp-trainer-bot ที่กล่าวถึงเข้าถึงสิ่งอื่นนอกเหนือจากหน้าแรก ขณะที่อนุญาตให้ Crawler อื่นๆ (เช่น เครื่องมือค้นหา) เข้าถึงเว็บไซต์ได้

user-agent: *
allow: /

user-agent: aicorp-trainer-bot
disallow: /
allow: /$

ใส่คอมเมนต์ทิ้งไว้ถึงตัวคุณในอนาคต

คุณสามารถขึ้นต้นบรรทัดด้วย # เพื่อเตือนตัวเองถึงเหตุผลที่ใส่กฎนั้นไว้

# I don't want bots in my highschool photos
user-agent: *
disallow: /photos/highschool/

ดูข้อมูลเพิ่มเติมได้ในรายการกฎ robots.txt ที่มีประโยชน์

การเปลี่ยนแปลงไฟล์ robots.txt (ในทางปฏิบัติ)

โปรโตคอลการยกเว้นสำหรับโรบ็อต (REP) จะทำงานโดยรวบรวมกฎ ("allow" หรือ "disallow") และระบุโรบ็อตที่จะใช้กฎเหล่านี้ คุณไม่จำเป็นต้องเรียนรู้การเขียนโปรแกรมหรือปรับแต่งเครื่องมือต่างๆ เพียงแค่ใส่กฎเหล่านี้ในไฟล์ข้อความแล้วอัปโหลดไปยังเว็บไซต์

สำหรับเว็บไซต์ส่วนใหญ่ กระบวนการนี้ง่ายกว่านั้น หากใช้ CMS โดยทั่วไปแล้ว CMS จะมีเครื่องมือในตัวเพื่อช่วยคุณเปลี่ยนไฟล์ robots.txt ตัวอย่างเช่น CMS บางระบบให้คุณปรับแต่งไฟล์ robots.txt ได้โดยใช้ช่องทําเครื่องหมายหรือแบบฟอร์มง่ายๆ และหลายระบบมีปลั๊กอินที่ช่วยในการตั้งค่าและเขียนกฎสําหรับไฟล์ robots.txt หากต้องการตรวจสอบสิ่งที่ทำได้ภายใน CMS ให้ค้นหาชื่อ CMS ของคุณ + "แก้ไขไฟล์ robots.txt"

เมื่อตั้งค่าทุกอย่างแล้ว คุณสามารถทดสอบเพื่อให้แน่ใจว่าไฟล์ได้รับการตั้งค่าตามที่คุณต้องการ ชุมชนเว็บได้สร้างเครื่องมือทดสอบมากมายเพื่อช่วยในเรื่องนี้ เช่น เครื่องมือทดสอบ robots.txt ของ TametheBot และโปรแกรมแยกวิเคราะห์ robots.txt นี้ที่ใช้ไลบรารีโปรแกรมแยกวิเคราะห์ robots.txt แบบโอเพนซอร์ส

หากมีข้อสงสัยเกี่ยวกับ robots.txt โปรดติดต่อเราทาง LinkedIn หรือแชทกับผู้เชี่ยวชาญที่ชอบเรื่องเดียวกันในฟอรัมชุมชน


ดูซีรีส์ "ทบทวนความรู้เรื่อง Robots" ที่เหลือได้ที่: