วันอังคารที่ 3 ธันวาคม 2024
คุณอาจเคยได้ยินว่า Google Search ต้องทำอะไรนิดหน่อยก่อนที่จะแสดงหน้าเว็บในผลการค้นหาของ Google Search ได้ หนึ่งในขั้นตอนเหล่านี้เรียกว่าการ Crawl Googlebot ซึ่งเป็นโปรแกรมที่ทำงานบนเซิร์ฟเวอร์ของ Google จะทำการ Crawl สำหรับ Google Search โดยดึงข้อมูล URL และจัดการกับสิ่งต่างๆ เช่น ข้อผิดพลาดของเครือข่าย การเปลี่ยนเส้นทาง และปัญหาเล็กๆ น้อยๆ อื่นๆ ที่อาจพบขณะท่องเว็บ แต่มีรายละเอียดบางอย่างที่ไม่ค่อยมีคนพูดถึงกัน ในแต่ละสัปดาห์ของเดือนนี้ เราจะมาเจาะลึกรายละเอียดบางอย่างที่ว่า เนื่องจากรายละเอียดเหล่านี้อาจส่งผลอย่างมากต่อวิธีทำการ Crawl เว็บไซต์
ย้อนกลับไปสักนิดก่อนว่าการ Crawl คืออะไร
การ Crawl คือกระบวนการค้นหาหน้าเว็บใหม่ กลับไปที่หน้าเว็บที่อัปเดต และดาวน์โหลดหน้าเว็บเหล่านั้น กล่าวโดยย่อคือ Googlebot จะรับ URL ส่งคำขอ HTTP ไปยังเซิร์ฟเวอร์ที่โฮสต์ URL นั้น จากนั้นจัดการกับการตอบกลับจากเซิร์ฟเวอร์ดังกล่าว ซึ่งอาจมีการติดตามการเปลี่ยนเส้นทาง จัดการข้อผิดพลาด และส่งต่อเนื้อหาหน้าเว็บไปยังระบบการจัดทำดัชนีของ Google
แต่หน้าเว็บสมัยใหม่ไม่ได้เป็น HTML ล้วนๆ แล้วพวกทรัพยากรอื่นๆ ที่ประกอบกันเป็นหน้าเว็บล่ะ การ Crawl ทรัพยากรเหล่านี้ส่งผลต่อ "Crawl Budget" อย่างไร ทรัพยากรเหล่านี้แคชได้ไหมในฝั่งของ Google และ URL ที่ไม่เคยได้รับการ Crawl มาก่อนกับ URL ที่ได้รับการจัดทำดัชนีแล้วมีความแตกต่างกันไหม ในโพสต์นี้ เราจะมาตอบคำถามเหล่านี้และคำถามอื่นๆ กัน
Googlebot และการ Crawl ทรัพยากรหน้าเว็บ
นอกจาก HTML แล้ว เว็บไซต์สมัยใหม่ยังใช้เทคโนโลยีต่างๆ ร่วมกัน เช่น JavaScript และ CSS เพื่อมอบประสบการณ์การใช้งานที่สดใสและฟังก์ชันการทำงานที่มีประโยชน์แก่ผู้ใช้ เมื่อเข้าถึงหน้าดังกล่าวด้วยเบราว์เซอร์ เบราว์เซอร์จะดาวน์โหลด URL หลักซึ่งโฮสต์ข้อมูลที่จำเป็นต่อการเริ่มสร้างหน้าสำหรับผู้ใช้ ซึ่งเป็น HTML ของหน้า ข้อมูลเริ่มต้นนี้อาจมีข้อมูลอ้างอิงถึงทรัพยากร เช่น JavaScript และ CSS รวมถึงรูปภาพและวิดีโอที่เบราว์เซอร์จะดาวน์โหลดอีกครั้งเพื่อสร้างหน้าสุดท้ายที่จะแสดงต่อผู้ใช้
Google ทำแบบเดียวกันทุกประการ แต่ทำต่างกันเล็กน้อย ดังนี้
- Googlebot จะดาวน์โหลดข้อมูลเริ่มต้นจาก URL หลัก ซึ่งเป็น HTML ของหน้า
- Googlebot จะส่งข้อมูลที่ดึงมาไปยังบริการแสดงผลเว็บ (WRS)
- WRS ใช้ Googlebot เพื่อดาวน์โหลดทรัพยากรที่อ้างอิงในข้อมูลต้นฉบับ
- WRS จะสร้างหน้าเว็บโดยใช้ทรัพยากรที่ดาวน์โหลดทั้งหมดตามที่เบราว์เซอร์ของผู้ใช้ทำ
เมื่อเทียบกับเบราว์เซอร์ ระยะเวลาระหว่างแต่ละขั้นตอนอาจนานกว่ามากเนื่องจากข้อจำกัดด้านการจัดตารางเวลา เช่น ภาระงานที่รับรู้ของเซิร์ฟเวอร์ที่โฮสต์ทรัพยากรที่จำเป็นในการแสดงผลหน้าเว็บ และนี่คือจุดที่เราจะแทรก Crawl Budget เข้าไปในการสนทนา
การ Crawl ทรัพยากรที่จำเป็นสำหรับการแสดงผลหน้าเว็บจะลด Crawl Budget ของชื่อโฮสต์ที่โฮสต์ทรัพยากร WRS จึงพยายามแคชทรัพยากรทุกรายการ (JavaScript และ CSS) ที่อ้างอิงในหน้าเว็บที่แสดงผลเพื่อปรับปรุงปัญหานี้ อายุของแคช WRS จะไม่ได้รับผลกระทบจากคำสั่งแคช HTTP แต่ WRS จะแคชทุกอย่างสูงสุด 30 วัน ซึ่งจะช่วยรักษา Crawl Budget ของเว็บไซต์ไว้สำหรับการ Crawl อื่นๆ
จากมุมมองของเจ้าของเว็บไซต์ การจัดการวิธีและทรัพยากรที่จะทำการ Crawl อาจส่งผลต่อ Crawl Budget ของเว็บไซต์ เราขอแนะนำดังนี้
- ใช้ทรัพยากรให้น้อยที่สุดเท่าที่จะทำได้เพื่อให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่ยอดเยี่ยม ยิ่งใช้ทรัพยากรในการแสดงผลหน้าเว็บน้อยเท่าใด ก็ยิ่งใช้ Crawl Budget น้อยลงในระหว่างการแสดงผล
- ใช้พารามิเตอร์ที่ป้องกันการแคชอย่างระมัดระวัง: หาก URL ของทรัพยากรมีการเปลี่ยนแปลง Google อาจต้องทำการ Crawl ทรัพยากรอีกครั้ง แม้ว่าเนื้อหาจะไม่ได้เปลี่ยนแปลงก็ตาม ซึ่งแน่นอนว่าจะกิน Crawl Budget
- โฮสต์ทรัพยากรในชื่อโฮสต์อื่นจากเว็บไซต์หลัก เช่น การใช้ CDN หรือเพียงแค่โฮสต์ทรัพยากรในโดเมนย่อยอื่น ซึ่งจะย้ายข้อกังวลเรื่องงบประมาณการ Crawl ไปยังโฮสต์ที่แสดงทรัพยากร
ประเด็นทั้งหมดเหล่านี้มีผลกับทรัพยากรสื่อด้วย หาก Googlebot (หรือพูดอย่างเจาะจงคือ Googlebot-Image
และ Googlebot-Video
ตามลำดับ) ดึงข้อมูลไฟล์ดังกล่าว ระบบจะใช้ Crawl Budget ของเว็บไซต์
คุณอาจต้องการเพิ่ม robots.txt ลงในรายการด้วย แต่จากมุมมองการแสดงผล การไม่อนุญาตให้ Crawl ทรัพยากรมักจะทำให้เกิดปัญหา หาก WRS ดึงข้อมูลทรัพยากรสำคัญในการแสดงผลไม่ได้ Google Search อาจมีปัญหาในการดึงข้อมูลเนื้อหาของหน้าเว็บและทำให้หน้าเว็บได้รับการจัดอันดับใน Search
Googlebot ทำการ Crawl อะไร
แหล่งข้อมูลที่ดีที่สุดในการวิเคราะห์ว่า Google กำลังทำการ Crawl ทรัพยากรใดอยู่คือบันทึกการเข้าถึงแบบ RAW ของเว็บไซต์ซึ่งมีรายการสำหรับ URL ทั้งหมดที่เบราว์เซอร์และ Crawler ขอ เราเผยแพร่ช่วง IP ในเอกสารประกอบสำหรับนักพัฒนาซอฟต์แวร์เพื่อระบุ Crawler ของ Google ในบันทึกการเข้าถึง
แหล่งข้อมูลที่ดีที่สุดรองลงมาคือรายงานสถิติการ Crawl ของ Search Console ซึ่งจะแสดงรายละเอียดแหล่งข้อมูลแต่ละประเภทตาม Crawler
สุดท้ายนี้ หากคุณสนใจเรื่องการ Crawl และการแสดงผลจริงๆ และอยากแชทเกี่ยวกับเรื่องนี้กับผู้อื่น โปรดไปที่ชุมชน Search Central หรือจะไปหาเราใน LinkedIn ก็ได้
อัปเดต
- ข้อมูลอัปเดตวันที่ 6 ธันวาคม 2024: ผลกระทบด้านประสิทธิภาพที่สังเกตได้ของการแสดงทรัพยากรจากต้นทางอื่น