לא תמיד אנחנו רוצים שכל דפי האתר יופיעו במנוע החיפוש – לפעמים אנו רוצים שדף ה-Log-in של האתר שלנו לא יוצג לראווה בגוגל, או שתוכן מסוים, אחר, לא יאונדקס. באופן עקרוני, אנו יכולים למנוע כניסה מבוטים על ידי שימוש ב-htaccess או בכלים אחרים. אבל לא תמיד צריך אמצעים דרסטיים כאלו – לפעמים צריך לבקש יפה. את הבקשה הזו עושים באמצעות robots.txt.
מדובר בקובץ שיושב ב-root של האתר ובו יש הנחיות לבוטים שונים שסורקים את האתר – בדרך כלל גוגל ובינג (אבל לא רק). בקובץ הזה אנו יכולים לשים הנחיות בנוגע לדפים שאנו מבקשים מהבוט שלא לסרוק.
בואו ונדגים! נניח ויש לנו דף לוגין בשם http://www.example.com/login.php ואנו לא רוצים שהוא ייסרק. אנו נשתול robots.txt באתר בכתובת http://www.example.com/robots.txt ובו יהיה כתוב הפשתגן הבא:
User-agent: *
Disallow: /login.php
ניתן גם לחסום תיקיות שלמות ואפילו אתר שלם, כך למשל אני יכול לחסום את הגישה לתיקית tmp באתר שלי:
User-agent: *
Disallow: /tmp/
ניתן גם לתת כללים שונים לבוטים שונים על פי ה-User agent שלהם. לכל בוט יש user agent משלו (למעט בוטים מרושעים שבדרך כלל מזייפים את ה-user agent שלהם ללא שום בעיה). כך למשל, אנו נמנע מגוגל בוט כניסה לתיקית tmp ולבוט sidewinder נאפשר כניסה לכלל האתר:
User-agent: googlebot
Disallow: /tmp/
User-agent: sidewinder
Disallow:
במידה ואין לכם גישה אל ה-root של האתר, אפשר להשתמש בתגית מטא בשם noindex בכל עמוד שאתם לא רוצים לאנדקס אותו:
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
חייבים לזכור שכל העניין הזה הוא מנדטורי. בוטים של מנועי חיפוש יכולים להתעלם או למלא באופן חלקי אחר ההנחיות שיש ב-robots.txt, אבל בשביל לייפות את התוצאות בגוגל ולמנוע מדפים לא קשורים לצוץ להם – זה פתרון מספיק טוב.
ותודה לאמיר כהן על הרעיון.