Robots.txt
คนทำ SEO อาจเคยได้ยินเกี่ยวกับ Robots.txt กันมาบ้างว่าสามารถช่วยเกี่ยวกับการมองเห็นเพื่อเก็บข้อมูลของบอทเพราะในการทำเว็บไซต์จะต้องทำหน้าเว็บต่างๆ มากมายหลายหน้าเพื่อให้ทั้งฝั่ง User มีประสบการณ์ที่น่าประทับใจอย่างเช่น หน้าค้นหาหรือหน้าขอบคุณและฝั่งคนทำเว็บเองก็มีความสะดวกสบาย เช่น การเก็บข้อมูลหลังบ้านหรือข้อมูลสมาชิกบนเว็บไซต์ เป็นต้น
โดยหน้าเว็บหลายหน้านั้นอาจไม่ได้มีความสำคัญอะไรมากไปกว่าความสะดวกต่อการใช้งานหรือการบอกกล่าวที่สร้างความประทับใจอย่างคำว่า Thank you แล้วหน้าที่เป็นแบบนี้จะมีประโยชน์กับ SEO ได้ยังไงกัน
แน่นอนว่า ไม่มีประโยชน์ อีกทั้งยังให้ Google เก็บข้อมูลรวมกับหน้าเนื้อหาที่เราต้องการนำเสนอไม่ได้ด้วย AMPROSEO เลยได้เอาตัวช่วยหนึ่งมานำเสนอให้กับทุกคนที่อยากให้ Google เก็บข้อมูลหรือ Crawl ได้ถูกที่มากขึ้น นั่นคือ การสร้าง Robots.txt
ดังนั้น บทความนี้เรามาทำความรู้จักกับ Robots.txt กันเลยดีกว่า ~
Robots.txt คืออะไร
Robots.txt คือ การเขียนสคริปต์บอกบอท (Bot) อย่างเช่น Google Bot ที่เข้ามาเก็บข้อมูลว่า ในเว็บไซต์หนึ่งตรงไหนหรือหน้าไหนอนุญาตให้เก็บข้อมูลไปได้บ้าง
อธิบายให้เข้าใจง่ายขึ้น Robots.txt จะเป็นเหมือนกุญแจหรือป้ายบอกทางว่า หน้านี้เก็บได้นะ หน้านี้เก็บไม่ได้นะ ซึ่งจะสามารถช่วยกำหนดพื้นที่การนำเสนอหน้าคอนเทนต์ที่อยากให้เก็บไปหรือหน้าหลังบ้านที่ไม่ต้องเก็บข้อมูล
ซึ่งเมื่อเราปิดป้ายบอกด้วย Robots.txt ไปแล้ว ตัวบอทก็จะเลือกเก็บเฉพาะส่วนที่อนุญาตเท่านั้น โดยที่ส่วนนี้สามารถกำหนดได้ทั้งหน้าเว็บไซต์ เก็บแบบเฉพาะเจาะจงรูปภาพ หรือเฉพาะเจาะจงที่สกุลไฟล์ของรูปภาพ ไปจนถึงการหน่วงเวลาในการเก็บข้อมูล ซึ่งหากเราใส่สคริปต์คำสั่งที่ถูกต้อง บอทของเสิร์ชเอนจิ้นก็จะเก็บตามที่เราบอกไว้ได้อย่างแม่นยำมากขึ้นนั่นเอง
Robots.txt สำคัญอย่างไรกับคนทำเว็บไซต์และทำ SEO
ตัว Robots.txt เป็นเสมือนกับป้ายกำกับให้กับตัวบอทของเหล่าเสิร์ชเอนจิ้นรู้ได้ว่าตรงไหนอ่านได้ ตรงไหนอ่านไม่ได้ หน้าไหนควรจะอ่านหรือหน้าไหนไม่จำเป็นต้องเก็บข้อมูลเอาไว้เลย
ดังนั้น สำหรับคนที่ทำ SEO แล้ว Robots.txt ย่อมเป็นเหมือนตัวช่วยสำคัญที่ทำให้บอทของเสิร์ชเอนจิ้นเก็บข้อมูลได้เฉพาะส่วนที่เราอยากนำเสนอที่สุด ขณะเดียวกันหน้าที่บอทของเสิร์ชเอนจิ้นอย่าง Google bot มักจะตัดสินหรือหาว่า หน้าไหนเป็นหน้าที่มีคุณภาพต่ำ อย่างเช่น หน้าค้นหา หน้าขอบคุณ หรือหน้าคั่นต่างๆ ซึ่งเราไม่ต้องการให้บอทเก็บข้อมูลหน้าเหล่านี้ไปทำอันดับบนเว็บไซต์อยู่แล้ว เราก็สามารถแปะป้าย Robots.txt บอกไว้ว่าไม่ให้อ่านหรือเก็บข้อมูลได้เช่นกัน
นอกจากนี้การทำ Robots.txt ยังช่วยป้องกันการเกิด Duplicate Content หรือคอนเทนต์ที่มีเนื้อหาซ้ำกัน ส่วนใหญ่ปัญหานี้จะพบในเว็บไซต์ E-commerce ซึ่งจะมีผลต่อการจัดอันดับ SEO โดยเมื่อเรารู้ว่าบางหน้าอาจจะมีเนื้อที่ซ้ำกัน ก็สามารถใช้ Robots.txt เข้ามาบอกได้ว่าหน้านี้ไม่จำเป็นต้องเก็บข้อมูลไปจัดทำดัชนีหรือ Index ต่อได้
ตัวอย่างคำสั่ง Robots.txt ที่ควรรู้
ก่อนที่เราจะไปรู้จักกับตัวอย่างคำสั่ง Robots.txt จะต้องรู้เกี่ยวกับคำเบื้องต้นที่ใช้กันเสียก่อน ได้แก่
- User-agent หมายถึงบอทของเสิร์ชเอนจิ้นต่างๆ โดยแต่ละเสิร์ชเอนจิ้นก็จะมีชื่อเฉพาะแยกไป เช่น Google เป็น Googlebot, Yahoo เป็น Slurp หรือ Bing เป็น Bingbot เป็นต้น
- (*) หมายถึงบอทของเสิร์ชเอนจิ้นทุกตัว
- Disallow หมายถึง ไม่อนุญาต
- Allow หมายถึง อนุญาต
- /wp-admin/ หมายถึงช่องทางที่ไม่อนุญาตให้บอทของเสิร์ชเอนจิ้นเข้าถึงได้
- Sitemap หมายถึงลิงก์หรือ URL ที่บอกที่อยู่ของแผนผังเว็บไซต์
ทีนี้เรามาดูตัวอย่างคำสั่ง Robots.txt ที่ควรรู้กันเลย
คำสั่งนี้หมายถึงไม่อนุญาตให้เก็บข้อมูล
User-agent: *
Disallow: /
คำสั่งนี้คืออนุญาตให้เก็บข้อมูลเฉพาะบอทของ Google เท่านั้น
User-agent: Googlebot-news
Allow: /
User-agent: *
Disallow: /
คำสั่งไม่อนุญาตให้เก็บข้อมูลในหน้า Directory และเนื้อหาในหน้านั้นๆ
User-agent: *
Disallow: /calendar/
Disallow: /junk/
Disallow: /books/fiction/contemporary/
คำสั่งนี้หมายถึง ไม่อนุญาตให้เก็บข้อมูลในหน้าเว็บเพจนี้
User-agent: *
Disallow: /useless_file.html
Disallow: /junk/other_useless_file.html
คำสั่งการบล็อกรูปภาพแบบเจาะจงไม่ให้บอทของ Google เก็บข้อมูล
User-agent: Googlebot-Image
Disallow: /images/dogs.jpg
คำสั่งการบล็อกรูปภาพทั้งหมดไม่ให้บอทของ Google เก็บข้อมูล
User-agent: Googlebot-Image
Disallow: /
วิธีสร้างไฟล์ Robots.txt
ในการสร้างไฟล์ Robots.txt นั้น แนะนำว่าควรเขียนสคริปต์ทั้งหมดให้เสร็จ พร้อมตรวจสอบความถูกต้อง โดยสามารถเขียนเก็บไว้ใน Notepad หรือโปรแกรมที่สามารถเก็บบันทึกข้อความต่างๆ ให้เรียบร้อยก่อนเพื่อให้การติดตั้ง Robots.txt ไม่ต้องเสียเวลาพิมพ์หรือแก้ไขในเวลานั้นเพราะอาจเกิดความผิดพลาดขึ้นได้ง่าย
เมื่อเขียนเรียบร้อยแล้วก็สามารถนำเอาไปใส่เองได้ผ่านเว็บ Hosting ซึ่งในแต่ละเว็บที่ให้บริการก็จะมีหน้าตาพื้นที่การใส่ไฟล์ Robots.txt ต่างกันออกไป เพียงแต่ต้องมั่นใจว่าสคริปต์ Robots.txt ที่เขียนนั้นได้วางใส่ในเว็บโดเมนหลักหรือ Directory หลัก ซึ่งวิธีการโดยทั่วไปจะคล้ายกันดังนี้
- เข้าไปที่หน้าต่างเครื่องมือหรือการจัดการของเว็บ Hosting
- เลือกเว็บโดเมนที่เราต้องการเอา Robots.txt เข้าไปฝัง
- จากนั้นเราสร้างโฟลเดอร์ชื่อว่า Robots.txt ไว้ในโฟลเดอร์ /public_html/
- เสณ้จแล้วก็คลิกขวากดเลือก Edit
- เมื่อขึ้นหน้าต่างสีขาวก็เอา Robots.txt ที่เราเตรียมไว้มาใส่ กด Save ก็เรียบร้อย
แต่หากใครต้องการตัวช่วยอย่างเช่น ปลั๊กอินต่างๆ ก็สามารถเลือกได้เช่นกัน เพราะปลั๊กอินเหล่านี้สร้างขึ้นเพื่อให้ความช่วยเหลือในเรื่องของ SEO อยู่แล้ว โดยปลั๊กอินต่างๆ จะอยู่บน CMS สำหรับทำเว็บไซต์ และนี่คือ CMS ที่สามารถใส่ Robots.txt ได้ มีดังนี้
- WordPress
- Wix
- Joomla
- Shopify
- BigCommerce
วิธีทดสอบ Robots.txt
สำหรับการทดสอบ Robots.txt ที่เราใส่ลงไปนั้นสามารถทำได้โดยการใช้เครื่องมือทดสอบ Robots.txt จาก Google ได้ ในการทดสอบเครื่องมือตัวนี้จะทำตัวเหมือนเป็นบอทของ Google เข้าไปรวบรวมข้อมูลเพื่อตรวจสอบไฟล์ Robots.txt แล้วยืนยันด้านการใช้งานว่าผลเป็นอย่างไร
เรามาดูวิธีการทดสอบ Robots.txt กัน
- อย่างแรกเปิดเครื่องมือทดสอบ Robots.txt ซึ่งเราจะต้องใช้เว็บไซต์ที่เชื่อมโยงกับ Google Search Console ก่อนนะ แต่ถ้าไม่ได้เชื่อมก็จะต้องพิสูจน์ตัวตนกันก่อนว่าเป็นเจ้าของเว็บจริงๆ
- จากนั้นก็กดเลือก Property ในลิสต์
- ผลการทดสอบก้จะออกมาให้ดูว่ามีโค้ดไหนที่ใช้ได้หรือใช้ไม่ได้บ้าง
คำถามที่พบบ่อยเกี่ยวกับ Robots.txt
มาถึงตรงนี้แล้ว น้องฮิปโป ก็พอจะรู้หลายคนอาจมีคำถามบางอย่างอยู่ในใจกันบ้าง แน่นอนว่า น้องฮิปโป ได้หาคำตอบมาให้แล้วเช่นกัน จะมีคำถามที่กำลังสงสัยอยู่หรือไม่ ไปดูกันเลยเจ้าค่ะ ~
จะหาไฟล์ Robots.txt เจอได้ยังไง
ในการใส่สคริปต์ Robots.txt นี้จะต้องใส่ที่โดเมนหลักของเว็บหรือหน้าแรกของเว็บเสมอ แต่หากต้องการจะตามหาว่าเว็บของเรามีการทำสคริปต์ Robots.txt หรือไม่ก็สามารถค้นหาได้โดยนำ /robots.txt ไปไว้ด้านหลัง URL ของเว็บ เช่น www.example.com/homepage/robots.txt ก็จะเห็นไฟล์สคริปต์ที่ได้สร้างเอาไว้ แต่หากไม่พบอะไรเลยก็แปลได้ว่าเว็บคุณยังไม่ได้ทำ Robots.txt นั่นเอง
Crawl-delay: 10 หมายถึงอะไร
Crawl-delay:10 หมายความตรงตัวได้เลยว่า เป็นคำสั่งเพื่อการหน่วงเวลาก่อนการเก็บข้อมูลของเว็บไซต์ หรือก็คือให้บอทรอก่อน 10 วินาทีก่อนที่เข้าถึงเนื้อหาเว็บไซต์นั่นเอง โดยหากเปลี่ยนเวลาที่จะหน่วงสามารถกำหนดได้ด้วยตัวเลขด้านหลัง มีหน่วยเป็นวินาที หรือสามารถเลื่อนปรับได้ใน Search Console
ข้อควรระวังในการทำ Robots.txt มีอะไรบ้าง
ถึงแม้ว่าการทำ Robots.txt จะมีประโยชน์อย่างมากเรียกว่าเว็บไซต์ที่ทำ SEO จะขาดไปไม่ได้เลยทีเดียวนั้น Robots.txt ก็มีข้อควรระวังที่สำคัญมากอยู่ข้อหนึ่ง นั่นคือ การเขียนสคริปต์คำสั่งผิดพลาด
เพราะ Robots.txt เป็นการกำหนดประตูของการเข้ามาอ่านข้อมูลสำหรับบอทของเสิร์ชเอนจิ้นต่างๆ เมื่อเราเขียนผิดอาจส่งผลต่อการเก็บข้อมูลของบอทและทำให้การจัดทำดัชนีหรือการจัดอันดับ SEO ของเราได้ด้วย ซึ่งในส่วนนี้นอกจากการเช็กคำสั่งอย่างถี่ถ้วนแล้วยังสามารถใช้ตัวช่วยอย่าง Robots Testing Tool ที่นำเสนอไว้ด้านบนได้ด้วยเช่นกัน
สรุปความสำคัญของ Robots.txt
การใส่สคริปต์ Robots.txt คือ เรื่องที่ค่อนข้างเป็นเชิงเทคนิคสำหรับการทำเว็บที่คนทำ SEO ไม่ควรพลาดเลย เพราะสคริปต์นี้เปรียบเสมือนประตูที่แปะป้ายเอาไว้อย่างชัดเจนว่าส่วนไหนที่บอทของเสิร์ชเอนจิ้นสามารถเข้ามาดูได้ และยังช่วยระบุได้ด้วยว่าส่วนไหนที่ไม่ควรเปิดให้เห็นเพื่อทำให้บอทจัดอันดับให้เว็บได้สูงขึ้น
แต่ด้วยความสำคัญนี้ของ Robots.txt ทำให้การติดตั้งหรือการเขียนและวางสคริปต์ต้องการความละเอียดรอบคอบ ผ่านเครื่องมือการทดสอบให้ความผิดพลาดเป็น 0 ดังนั้นหากเว็บใดที่มี นักพัฒนาเว็บหรือ Developer ก็ควรปรึกษาหรือยกส่วนนี้ให้เป็นหน้าที่ของเขาไป เพื่อป้องกันความผิดพลาดที่อาจส่งผลต่อการเก็บข้อมูลและการจัดทำดัชนีของบอทได้