บทความทั้งหมด

robots.txt: บอตค้นหาตัดสินใจอย่างไรว่าอะไรสามารถรวบรวมข้อมูลได้

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

คำสั่ง User-agent, Disallow และ Allow

ไฟล์นี้ประกอบด้วยหลายบล็อก แต่ละบล็อกเริ่มด้วย User-agent: ตามด้วยคำสั่ง Disallow และ Allow ที่ระบุเส้นทางที่ห้ามหรืออนุญาตให้เข้าถึง บอตจะใช้บล็อกแรกที่ User-agent ตรงกับชื่อของตัวเอง หากไม่มีบล็อกที่ตรงกันก็จะใช้บล็อกทั่วไปอย่าง User-agent: * แทน

Crawl-delay: เหตุใด Google จึงไม่สนใจคำสั่งนี้เลย

Bingbot ยังคงเคารพคำสั่ง Crawl-delay เพื่อเว้นระยะห่างระหว่างการเข้าเยี่ยมชมแต่ละครั้ง แต่ Google ไม่เคยรองรับคำสั่งนี้ใน robots.txt เลย หากมีคำสั่งนี้อยู่ในบล็อกที่ระบุถึง Googlebot มันจะถูกละเลยไปเฉยๆ หากต้องการปรับความเร็วในการไล่เก็บข้อมูลของ Google ต้องไปตั้งค่าที่ Search Console แทน ไม่ใช่ใน robots.txt

Sitemap: คำแนะนำ ไม่ใช่ข้อบังคับ

คำสั่ง Sitemap: บอกตำแหน่งของไฟล์ sitemap.xml ให้เสิร์ชเอนจินทราบ ไม่ใช่ข้อบังคับ แต่มีประโยชน์ เพราะบอตไม่ต้องเดาเส้นทางของไซต์แมป หรือพึ่งพาเพียงการลงทะเบียนไว้ใน search console เท่านั้น

เหตุผลที่ควรตรวจสอบไฟล์นี้

  • ตรวจสอบไวยากรณ์ของ robots.txt ก่อนเผยแพร่ เพื่อไม่ให้การพิมพ์ผิดเล็กน้อยปิดกั้นการไล่เก็บข้อมูลทั้งเว็บไซต์โดยไม่ตั้งใจ
  • ยืนยันว่าไม่มีส่วนสำคัญของเว็บไซต์ถูกซ่อนโดยไม่ตั้งใจ จากกฎที่ขัดแย้งกันระหว่างบล็อกต่างๆ
  • ทดสอบชุดค่า user-agent และเส้นทางที่ต้องการได้ทันที โดยไม่ต้องรอการไล่เก็บข้อมูลรอบถัดไป

เหตุใด Disallow จึงไม่ซ่อนหน้าเว็บจากผลการค้นหา

นี่คือความเข้าใจผิดที่พบบ่อยที่สุด Disallow ห้ามบอตไล่เก็บเนื้อหาของหน้านั้น แต่ไม่ได้ห้ามการจัดทำดัชนี URL ของหน้านั้น หากมีเว็บไซต์อื่นที่ถูกจัดทำดัชนีแล้วลิงก์มายังหน้าที่ถูกบล็อกนี้ Google ก็ยังอาจแสดง URL นั้นในผลการค้นหาโดยไม่มีคำอธิบาย เพราะไม่เคยไล่เก็บเนื้อหาจริงเลย

ลองใช้เครื่องมือ