การปรับปรุงข้อมูลจําเพาะของโปรโตคอลการยกเว้นสำหรับโรบ็อตให้เป็นมาตรฐานของอินเทอร์เน็ตอย่างเป็นทางการ

วันจันทร์ที่ 1 กรกฎาคม 2019

ตลอด 25 ปี โปรโตคอลการยกเว้นสําหรับโรบ็อต (Robots Exclusion Protocol หรือ REP) เป็นองค์ประกอบพื้นฐานและสําคัญที่สุดอย่างหนึ่งของเว็บ โดยช่วยให้เจ้าของเว็บไซต์สามารถยกเว้นไคลเอ็นต์อัตโนมัติอย่างเช่น Web Crawler ไม่ให้เข้าถึงเว็บไซต์บางส่วนหรือทั้งหมด

ในปี 1994 Martijn Koster (เป็นผู้ดูแลเว็บเองด้วย) ได้สร้างมาตรฐานเริ่มต้นหลังจากหลังจากที่ Crawler เข้ามาป่วนเว็บไซต์ของเขามากเกินไป เมื่อได้รับข้อมูลจากผู้ดูแลเว็บอื่นๆ มากขึ้น REP จึงได้ถือกําเนิดขึ้น และมีเครื่องมือค้นหาต่างๆ นำไปใช้เพื่อช่วยให้เจ้าของเว็บไซต์จัดการทรัพยากรของเซิร์ฟเวอร์ได้ง่ายขึ้น

อย่างไรก็ตาม REP ไม่เคยถูกนำไปเป็นมาตรฐานอินเทอร์เน็ตอย่างเป็นทางการ ซึ่งหมายความว่านักพัฒนาซอฟต์แวร์ตีความโปรโตคอลแตกต่างกันค่อนข้างมากในช่วงหลายปีที่ผ่านมา และตั้งแต่แรกเริ่มมาเลย ก็ยังไม่มีการอัปเดต REP ให้ครอบคลุมกรณีศึกษาในปัจจุบัน ปัญหานี้เป็นความท้าทายของเจ้าของเว็บไซต์เนื่องจากมาตรฐานที่รู้กันเอง (De-facto) ซึ่งไม่มีความชัดเจนทําให้ยากต่อการเขียนกฎอย่างถูกต้อง

เราต้องการช่วยให้เจ้าของเว็บไซต์และนักพัฒนาสร้างประสบการณ์อันน่าประทับใจบนอินเทอร์เน็ต แทนที่จะต้องกังวลเกี่ยวกับการควบคุม Crawler ผู้ดูแลเว็บ และเครื่องมือค้นหาอื่นๆ ร่วมกับผู้เขียนต้นฉบับของโปรโตคอลนี้ได้บันทึกวิธีการใช้ REP บนเว็บสมัยใหม่และส่งไปยัง IETF แล้ว

REP ฉบับร่างที่ส่งไปแสดงถึงประสบการณ์จริงกว่า 20 ปีของการพึ่งพากฎ robots.txt ที่ใช้โดย Googlebot และ Crawler หลักอื่นๆ รวมถึงเว็บไซต์อีกประมาณ 500 ล้านเว็บไซต์ที่ใช้ REP การควบคุมแบบละเอียดเหล่านี้ช่วยให้ผู้เผยแพร่เนื้อหามีอํานาจในการตัดสินใจว่าจะให้มีการ Crawl อะไรในเว็บไซต์ของตนและแสดงต่อผู้ใช้ที่สนใจ การดําเนินการนี้ไม่ได้เปลี่ยนกฎที่สร้างขึ้นในปี 1994 แต่จะระบุสถานการณ์ทั้งหมดที่ยังไม่ได้มีการพูดถึงซึ่งจำเป็นอย่างยิ่งสำหรับการแยกวิเคราะห์และการจับคู่ robots.txt และขยายไปใช้กับเว็บสมัยใหม่ และโปรดทราบดังต่อไปนี้

  1. โปรโตคอลการโอนที่อิงตาม URI จะใช้ robots.txt ได้ เช่น robots.txt ไม่ได้จํากัดไว้ที่ HTTP อีกต่อไปและสามารถใช้กับ FTP หรือ CoAP ได้เช่นกัน
  2. นักพัฒนาซอฟต์แวร์ต้องแยกวิเคราะห์ข้อมูล 500 กิบิไบต์แรกของ robots.txt เป็นอย่างน้อย การกําหนดขนาดไฟล์สูงสุดจะช่วยให้แน่ใจว่าการเชื่อมต่อจะไม่เปิดนานเกินไป จึงช่วยลดความเครียดของเซิร์ฟเวอร์โดยไม่จำเป็นลงไปได้
  3. เวลาการแคชสูงสุด 24 ชั่วโมงหรือค่าคำสั่งแคช (หากมี) ช่วยให้เจ้าของเว็บไซต์อัปเดต robots.txt ได้ตามต้องการและ Crawler จะไม่โอเวอร์โหลดเว็บไซต์ด้วยคําขอ robots.txt มากเกินไป เช่น ในกรณีที่อาจใช้ HTTP ส่วนหัว Cache-Control เพื่อกําหนดเวลาการแคช
  4. ข้อกําหนดระบุไว้ว่าเมื่อไฟล์ robots.txt ที่เคยเข้าถึงได้ก่อนหน้านี้กลับไม่สามารถเข้าถึงได้เนื่องจากเซิร์ฟเวอร์ขัดข้อง หน้าที่รู้จักซึ่งไม่อนุญาตจะไม่มีการ Crawl เป็นเวลานานพอสมควร

นอกจากนี้เรายังได้อัปเดตแบบฟอร์ม Augmented Backus-Naur ในฉบับร่างสำหรับอินเทอร์เน็ตเพื่อกําหนดไวยากรณ์ของ robots.txt ให้ดียิ่งขึ้น ซึ่งจำเป็นต่อนักพัฒนาซอฟต์แวร์ในการแยกวิเคราะห์บรรทัด

RFC ย่อมาจาก Request for Comments และเราหมายความว่าอย่างนั้นจริงๆ เราอัปโหลดฉบับร่างไปยัง IETF เพื่อรับความคิดเห็นจากนักพัฒนาซอฟต์แวร์ที่ให้ความสําคัญกับการสร้างพื้นฐานสำหรับอินเทอร์เน็ต ในขณะที่เราพยายามทำให้คนทำเว็บไซต์สามารถควบคุมสิ่งต่างๆ ได้ พวกเขาก็ต้องบอกให้เรารู้ว่าอยากให้ข้อมูลกับ Googlebot มากแค่ไหน และเมื่อเรารู้แล้ว เราต้องแน่ใจว่าได้ทำอย่างถูกต้องเพื่อให้เว็บไซต์มีสิทธิ์แสดงใน Search

หากต้องการแสดงความคิดเห็น มีคําถาม หรือแค่อยากจะแวะมาทักทาย คุณคุยกับเราได้ที่ Twitter และในชุมชนสำหรับผู้ดูแลเว็บทั้งแบบออฟไลน์และออนไลน์