ก่อน Googlebot จะเริ่มสำรวจเว็บไซต์ของคุณ มันจะแวะอ่านไฟล์เล็ก ๆ ไฟล์หนึ่งก่อนเสมอ นั่นคือ Robots.txt ไฟล์ที่หลายคนไม่เคยสังเกต แต่มีผลต่อการจัดอันดับเว็บไซต์มากกว่าที่คิดครับ
สรุปประเด็นสำคัญ (Key Takeaways)
- Robots.txt คือ ไฟล์ข้อความที่วางไว้ที่ Root ของเว็บไซต์ เพื่อบอก Search Engine Bot ว่าแต่ละหน้าเก็บข้อมูลได้หรือไม่ได้
- หน้าที่หลัก คือ จัดการการ Crawl ไม่ใช่การ Index ถ้าอยากปิดกั้นไม่ให้หน้าปรากฏบน Google จริง ๆ ต้องเปิดให้ Crawl ได้ แล้วใส่ noindex แทน ห้ามใช้คู่กับ Disallow ในหน้าเดียวกัน
- เขียนด้วยคำสั่งพื้นฐาน อย่าง User-agent, Disallow, Allow และ Sitemap สร้างเองได้ง่าย ๆ ด้วย Notepad หรือปลั๊กอิน SEO บน WordPress แล้วตรวจสอบได้ที่ yourdomain.com/robots.txt
Robots.txt คืออะไร?
Robots.txt คือ ไฟล์ข้อความธรรมดา (.txt) ที่วางไว้ที่ Root Directory ของเว็บไซต์ หรือพูดง่าย ๆ คือโฟลเดอร์ชั้นนอกสุดที่เก็บไฟล์ทั้งหมดของเว็บไซต์บนเซิร์ฟเวอร์ พอวางไฟล์ไว้ตรงนี้แล้ว จะเปิดดูได้ผ่านลิงก์ เช่น www.yourdomain.com/robots.txt
ไฟล์นี้บอก Search Engine Bot (หรือเรียกว่า Crawler/Spider ก็ได้ เช่น Googlebot, Bingbot) ว่าเข้าหน้าไหนได้ ห้ามเข้าหน้าไหน เทียบง่าย ๆ ก็เหมือนป้ายกำกับสิทธิ์หน้าประตูเว็บไซต์ครับ
Robots.txt มีหน้าที่อะไรบล็อกแล้วทำไมยังโผล่ใน Google ได้?
Robots.txt มีหน้าที่บอก Bot ว่าหน้าไหนสำรวจ (Crawl) ได้บ้าง ผ่าน 2 คำสั่งหลักคือ Disallow (ห้ามเข้า) และ Allow (อนุญาตให้เข้า)
หลายคนเข้าใจผิดว่า Disallow แปลว่าซ่อนหน้านั้นจาก Google ไปเลย แต่จริง ๆ ไม่ใช่ครับ Robots.txt คุมแค่การ Crawl หน้าที่ถูก Disallow ยังโผล่ในผลค้นหาได้อยู่ดีถ้ามีเว็บอื่นลิงก์มาหา เพียงแต่ Google จะไม่เห็นเนื้อหาข้างในเท่านั้น ซึ่งก็มักทำให้อันดับไม่ดีตามไปด้วย เพราะ Google ไม่รู้ว่าข้างในมีอะไร
ถ้าอยากปิดกั้นหน้าจาก Google จริง ๆ ต้องใช้ noindex แทน Disallow และห้ามใช้คู่กันในหน้าเดียว เพราะ Disallow จะกันไม่ให้ Google เข้าไปเห็นคำสั่ง noindex เลย วิธีที่ถูกคือเปิดให้ Crawl ได้ตามปกติ แล้วใส่ noindex ไว้แทนครับ
ความสำคัญของ Robots.txtเมื่อเว็บไซต์เริ่มมีหน้าเพจเยอะขึ้นเรื่อย ๆ
Robots.txt อาจดูเป็นไฟล์เล็ก ๆ แต่ส่งผลต่อ SEO ในหลายมิติครับ
- บริหาร Crawl Budget ให้คุ้มค่า เว็บไซต์ขนาดใหญ่ที่มีหลายพันหน้า ควรกันไม่ให้ Bot เสียเวลากับหน้าที่ไม่สำคัญ จะได้ไปโฟกัสหน้าที่ ที่มีคุณค่าจริง ๆ แทน
- ลดปัญหาเนื้อหาซ้ำซ้อน เช่น หน้าที่เกิดจากระบบ Filter หรือ Tag ที่มักสร้างเนื้อหาคล้ายกันซ้ำไปซ้ำมา
- ป้องกันหน้าที่ไม่ควรถูกเก็บข้อมูล เช่น หน้า Login หน้าแอดมิน หรือหน้าที่อยู่ระหว่างทดสอบระบบ
- ลดภาระเซิร์ฟเวอร์ เพราะ Bot ไม่ต้องเสียเวลา Crawl หน้าที่ไม่จำเป็น เซิร์ฟเวอร์จึงเหลือทรัพยากรไปให้ผู้ใช้งานจริงมากขึ้น โดยเฉพาะเว็บไซต์ที่มี Bot เข้ามา Crawl บ่อย ๆ
4 คำสั่งและโครงสร้างพื้นฐานใน Robots.txtที่ควรรู้
ไฟล์ Robots.txt ประกอบด้วยคำสั่งพื้นฐานไม่กี่ตัว แต่ต้องเขียนให้ถูกต้อง เพราะพลาดนิดเดียวอาจทำให้กระทบทั้งเว็บไซต์ได้ครับ
1. User-agent
ระบุว่าคำสั่งชุดนั้นใช้กับ Bot ตัวไหน เช่น ใช้เครื่องหมาย * หมายถึงบังคับใช้กับ Bot ทุกตัว หรือระบุชื่อเจาะจงอย่าง Googlebot หากต้องการควบคุมเฉพาะ Bot ของ Google เท่านั้น
2. Disallow
บอก Bot ว่าห้ามเข้าไปเก็บข้อมูลในเส้นทางที่ระบุ เช่น Disallow: /admin/ หมายถึงไม่อนุญาตให้เข้าไปในโฟลเดอร์ admin
3. Allow
ใช้สร้างข้อยกเว้นภายในโฟลเดอร์ที่ถูก Disallow ไปแล้ว เช่น กันทั้งโฟลเดอร์ไว้ แต่อนุญาตเฉพาะไฟล์ย่อยบางไฟล์ให้เข้าถึงได้
4. Sitemap
ระบุตำแหน่งไฟล์ Sitemap ของเว็บไซต์ เพื่อให้ Bot หาเจอและเข้าถึงได้ง่ายขึ้น แม้จะไม่ใช่คำสั่งบังคับ แต่แนะนำให้ใส่ไว้เสมอ
ตัวอย่าง Robots.txtที่หยิบไปปรับใช้ได้ทันที
ลองมาดูตัวอย่างการเขียน Robots.txt ที่พบบ่อยครับ
ตัวอย่างที่ 1: ไม่อนุญาตให้ Bot ทุกตัวเข้าเว็บไซต์เลย
| User-agent: *Disallow: / |
ตัวอย่างที่ 2: ปิดกั้นเฉพาะบางโฟลเดอร์ ส่วนที่เหลืออนุญาตหมด
| User-agent: *Disallow: /admin/Allow: / |
ตัวอย่างที่ 3: อนุญาตให้เข้าถึงทุกส่วน พร้อมระบุ Sitemap
| User-agent: *Allow: /Sitemap: https://www.yourdomain.com/sitemap.xml |
สังเกตว่าโครงสร้างไม่ซับซ้อนเลยครับ แค่ต้องระวังเรื่องการเว้นวรรคและเครื่องหมาย / ให้ถูกต้อง เพราะเขียนผิดนิดเดียวความหมายเปลี่ยนไปคนละเรื่องได้เลย
อีกกรณีที่พบบ่อยคือการบล็อกไฟล์เฉพาะประเภท เช่น ไม่อยากให้ Bot เก็บข้อมูลไฟล์ PDF ทั้งหมดในเว็บไซต์ ก็สามารถใช้เครื่องหมาย $ ระบุจุดจบของ URL ได้แบบนี้
ตัวอย่างที่ 4: ไม่อนุญาตให้เก็บข้อมูลไฟล์ประเภท .pdf ทั้งหมด
| User-agent: *Disallow: /*.pdf$ |
สร้างไฟล์ Robots.txtเอง ใช้เวลาไม่ถึง 5 นาที
ถ้าเว็บไซต์ของคุณยังไม่เคยมีไฟล์นี้มาก่อน สร้างเองได้ไม่ยากครับ มีอยู่ 2 วิธีหลัก ๆ ดังนี้
สร้างด้วยตัวเองแบบ Manual
เปิดโปรแกรมแก้ไขข้อความทั่วไป เช่น Notepad หรือ VS Code พิมพ์คำสั่งตามที่ต้องการ แล้วบันทึกเป็นไฟล์ชื่อ robots.txt (ต้องใช้ชื่อนี้เท่านั้น) จากนั้นอัปโหลดผ่าน File Manager ของ Hosting ไปไว้ที่โฟลเดอร์ Root (มักเป็นโฟลเดอร์ public_html) เพียงเท่านี้ไฟล์ก็พร้อมใช้งาน
ใช้ปลั๊กอิน SEO บน WordPress
ถ้าเว็บไซต์สร้างด้วย WordPress และติดตั้งปลั๊กอินอย่าง Yoast SEO หรือ RankMath อยู่แล้ว ปลั๊กอินเหล่านี้จะสร้างไฟล์ Robots.txt พื้นฐานให้อัตโนมัติ และยังเข้าไปแก้ไขเพิ่มเติมเองได้ภายหลังผ่านเมนูตั้งค่าของปลั๊กอินเลย ไม่ต้องยุ่งกับ File Manager ให้ซับซ้อน
ตัวอย่าง URL ที่ถูกต้องของ Robots.txt
Robots.txt เขียนถูกแค่ไหนก็ไม่มีประโยชน์ ถ้าวางไฟล์ผิดตำแหน่ง เพราะ Google จะมองไม่เห็นไฟล์นั้นเลย ลองเช็กตามตัวอย่างต่อไปนี้ครับ
| ตำแหน่งไฟล์ | ผลลัพธ์ |
| https://example.com/robots.txt | ใช้ได้ ครอบคลุมทุกหน้าในโดเมนและโปรโตคอลเดียวกัน |
| https://example.com/folder/robots.txt | ใช้ไม่ได้ Bot มองหาไฟล์นี้ที่ Root เท่านั้น ไม่เข้าไปเช็กในโฟลเดอร์ย่อย |
| https://www.example.com/robots.txt | ใช้ได้เฉพาะโดเมนย่อยนั้น ไม่ครอบคลุมถึง example.com หรือโดเมนย่อยอื่น เช่น shop.example.com |
| http://example.com/robots.txt (เทียบกับไฟล์บน https) | ใช้ไม่ได้ เพราะ Google มองว่า http กับ https เป็นคนละที่อยู่กัน |
สรุปคือเช็กให้ชัวร์ว่าไฟล์อยู่ตรง Root ของโดเมนและโปรโตคอลที่ใช้งานจริง ก่อนวางไฟล์ทุกครั้งครับ ดูตัวอย่างเพิ่มเติมได้ที่ข้อกำหนด Robots.txt ของ Google
วิธีตรวจสอบ Robots.txtก่อนที่ Google จะมองไม่เห็นทั้งเว็บไซต์
ก่อนจะมั่นใจว่าไฟล์ Robots.txt ของเว็บไซต์ตั้งค่าไว้ถูกต้อง ลองเช็กตามนี้ครับ
- เปิดดูตรง ๆ ผ่านเบราว์เซอร์ พิมพ์ yourdomain.com/robots.txt แล้วดูว่าไฟล์แสดงผลถูกต้องไหม
- ตรวจสอบผ่าน Google Search Console ได้จากรายงาน Robots.txt ซึ่งจะช่วยยืนยันว่า Google อ่านไฟล์นี้ถูกต้องหรือมีปัญหาตรงไหน
- ใช้เครื่องมือ SEO ภายนอก เช่น Screaming Frog ที่ช่วยตรวจสอบ Robots ว่าได้บล็อกลิงก์สำคัญไปโดยไม่ตั้งใจหรือเปล่า
- เช็กหลังย้ายเว็บไซต์ทุกครั้ง เว็บที่เพิ่งย้ายจาก Staging มาใช้งานจริง มักลืมแก้ไขไฟล์นี้ จนบล็อกทั้งเว็บไซต์โดยไม่รู้ตัว
คำถามที่พบบ่อย (FAQs) เกี่ยวกับ Robots.txt
Robots.txtต่างจาก Noindex อย่างไร?
Robots.txt คุมว่า Bot จะเข้ามา Crawl หน้านั้นได้ไหม ส่วน Noindex คุมว่าหน้านั้นจะโชว์ในผลค้นหาได้ไหม คนละขั้นตอนกัน ถ้าอยากปิดกั้นจากการค้นหาจริง ๆ ต้องเปิดให้ Crawl ได้ตามปกติ แล้วใส่ Noindex แทน ห้ามใช้คู่กับ Disallow เพราะ Google จะเข้ามาอ่านคำสั่ง Noindex ไม่ได้เลย
เว็บไซต์เล็ก ๆ จำเป็นต้องมี Robots.txtไหม?
ขึ้นอยู่กับเป้าหมายครับ ถ้าไม่สนใจอันดับ SEO หรือ AI Search เลย ไม่มีไฟล์นี้ก็ไม่กระทบ เพราะ Bot จะเก็บข้อมูลทุกหน้าตามปกติอยู่แล้ว แต่ถ้าอยากติดอันดับ แนะนำให้มีไว้ตั้งแต่เนิ่น ๆ ไม่ต้องรอเว็บใหญ่ก่อน ถ้าไม่มั่นใจว่าเว็บตัวเองควรปรับจุดไหน ลองทำ SEO Audit ดูได้ครับ
ตั้งค่า Robots.txtผิดจะเกิดอะไรขึ้น?
อาจมีผลกระทบกว่าที่คิดครับ เช่น เผลอเขียน Disallow: / โดยไม่ตั้งใจ อาจทำให้ทั้งเว็บไซต์หายไปจาก Google เลย หรือบล็อกไฟล์ CSS/JavaScript โดยไม่รู้ตัว ทำให้ Google เข้าใจโครงสร้างหน้าเว็บผิดเพี้ยนไป
ใช้ WordPress ต้องสร้าง Robots.txtเองไหม?
ไม่จำเป็นครับ ปลั๊กอินอย่าง Yoast หรือ RankMath สร้างให้อัตโนมัติอยู่แล้ว แต่ยังปรับแก้เพิ่มเติมเองได้ตามต้องการ
สรุป
Robots.txt อาจเป็นไฟล์เล็ก ๆ ที่มองข้ามได้ง่าย แต่ถ้าตั้งค่าไม่ถูกต้อง ผลกระทบที่ตามมาอาจใหญ่กว่าที่คิด ตั้งแต่เสีย Crawl Budget ไปจนถึงเว็บไซต์หายจาก Google ทั้งเว็บ
หากไม่มั่นใจว่าเว็บไซต์ของคุณตั้งค่า Robots.txt ถูกต้องหรือยัง ทีมกระจ่างที่ดูแลด้าน Technical SEO แบบครบวงจร ยินดีช่วยตรวจสอบและแก้ไขให้ครับ ทักมาคุยกันก่อนได้ ไม่มีค่าใช้จ่าย
ปรึกษาทีมกระจ่างฟรี!
064-553-5526
info@krajang.co.th