חסום כתובות אתרים באמצעות robots.txt

יצירת קובץ robots.txt

אם משתמשים בשירות אירוח אתרים כמו Wix או Blogger, יכול להיות שלא יהיה צורך ליצור או לערוך קובץ robots.txt.

תחילת העבודה

קובץ robots.txt ממוקם בבסיס האתר. לכן, באתר www.example.com, קובץ robots.txt file ממוקם ב-www.example.com/robots.txt. ‏robots.txt הוא קובץ טקסט פשוט שמציית לפרוטוקול אי הכללת רובוטים. קובץ robots.txt מכיל כלל אחד או יותר. כל כלל חוסם (או מאפשר) גישה לסורק נתון לנתיב הקובץ המצוין באתר זה.

זוהי דוגמה לקובץ robots.txt פשוט. הוא מכיל שני כללים שמוסברים למטה:

# Rule 1
User-agent: Googlebot
Disallow: /nogooglebot/

# Rule 2
User-agent: *
Allow: /

Sitemap: http://www.example.com/sitemap.xml

 

הסבר:

  1. הסורק של סוכן משתמש בשם "Googlebot" אינו רשאי לסרוק את התיקייה http://example.com/nogooglebot/ או את ספריות המשנה.
  2. לכל שאר סוכני המשתמש יש גישה לאתר כולו. (ניתן להשמיט פרט זה והתוצאה תהיה זהה, בהתאם להנחה שיש לאפשר גישה מלאה).
  3. קובץ ה-Sitemap של האתר נמצא ב-http://www.example.com/sitemap.xml

דוגמה מפורטת יותר תוצג בהמשך.

הנחיות בסיסיות ל-robots.txt

אלו הן כמה הנחיות בסיסיות לקובצי robots.txt. אנחנו ממליצים לקרוא את התחביר המלא של קובצי robots.txt שכן לתחביר של robots.txt יש התנהגות ייחודית שצריך להבין.

פורמט ומיקום

ניתן להשתמש כמעט בכל עורך טקסט כדי ליצור קובץ robots.txt. צריך להשתמש בעורך טקסט שיכול ליצור קובצי טקסט בתקן ASCII או UTF-8. אין להשתמש במעבד תמלילים (לרוב, במעבדי תמלילים קבצים נשמרים בפורמט קנייני, וייתכן שיתווספו תווים לא צפויים, כגון מירכאות מסולסלות. תווים אלה עלולים לגרום בעיות לסורקים).

משתמשים בכלי בודק קובץ robots.txt כדי לכתוב או לערוך קובצי robots.txt לאתר. כלי זה מאפשר לבדוק את התחביר וההתנהגות באתר.

כללי פורמט ומיקום:

  • שם הקובץ חייב להיות robots.txt.
  • לכל אתר צריך להיות קובץ robots.txt אחד בלבד.
  • הקובץ robots.txt חייב להיות ממוקם בתיקיית הבסיס של מארח האתר שעליו הוא חל. לדוגמה, כדי לשלוט על הסריקה של תיקיית הבסיס בכל כתובות האתרים שתחת http://www.example.com/, יש למקם את הקובץ robots.txt בנתיב http://www.example.com/robots.txt. אין למקם את הקובץ בספריית משנה (למשל בנתיב http://example.com/pages/robots.txt). אם לא בטוחים איך לגשת אל תיקיית הבסיס של האתר או אם נדרשות הרשאות לכך, יש ליצור קשר עם ספק שירותי האירוח של האתר. אם לא ניתן לגשת לתיקיית הבסיס של האתר, משתמשים בשיטת חסימה אחרת, כמו meta tags.
  • קובץ robots.txt יכול לחול על תת-דומיינים (לדוגמה, http://website.example.com/robots.txt) או על יציאות לא סטנדרטיות (לדוגמה, http://example.com:8181/robots.txt).
  • הערות הן קווים כלשהם 

תחביר

  • robots.txt חייב להיות קובץ טקסט מסוג ASCII או UTF-8 תווים אחרים אינם מורשים.
  • קובץ robots.txt מכיל כלל אחד או יותר.
  • כל כלל מורכב ממספר הנחיות (הוראות), הנחיה אחת לכל שורה.
  • כלל מספק את המידע הבא:
    • על מי חל הכלל (סוכן המשתמש)
    • לאילו ספריות או קבצים יש לסוכן גישה, ו/או
    • לאילו ספריות או קבצים אין לסוכן גישה.
  • הכללים מעובדים מלמעלה למטה, ולכל סוכן משתמש תותאם קבוצת כללים אחת בלבד – קבוצת הכללים הראשונה והספציפית ביותר שתתאים לו.
  • הנחת ברירת המחדל היא שסוכן המשתמש יכול לסרוק דף או ספרייה שאינם חסומים על ידי כלל Disallow:.
  • הכללים תלויים באותיות רישיות. לדוגמה, Disallow: /file.asp חל על http://www.example.com/file.asp, אבל לא על  http://www.example.com/FILE.asp.

בקובצי robots.txt משתמשים בהנחיות הבאות:

  • סוכן משתמש: [חובה להשתמש באחד לפחות בכל כלל] שם הרובוט של מנוע החיפוש (תוכנת סורק אינטרנט) שהכלל חל עליו. זוהי השורה הראשונה בכל כלל. רוב שמות ה-user agent רשומים במסד הנתונים של רובוטים באינטרנט או ברשימת סוכני המשתמש של Google. ניתן להשתמש בתו הכללי לחיפוש (*) כממלא מקום תחיליות, סיומות או מחרוזת שלמה. השימוש בכוכבית (*) כמו בדוגמה למטה מתאים לכל הסורקים פרט לסורקי AdsBot, אשר את שמם יש לכתוב במלואו. (לעיון ברשימת השמות של סורקי Google.) לדוגמה:
    # Example 1: Block only Googlebot
    User-agent: Googlebot
    Disallow: /
    
    # Example 2: Block Googlebot and Adsbot
    User-agent: Googlebot
    User-agent: AdsBot-Google
    Disallow: /
     
    # Example 3: Block all but AdsBot crawlers
    User-agent: * 
    Disallow: /
  • Disallow: [חובה להשתמש פעם אחת לפחות ברשומות Disallow או Allow בכל כלל] ספרייה או דף במיקום יחסי לדומיין הבסיס, שאין לסרוק אותם על ידי סורק המשתמש. במקרה של דף, יש לציין את שם הדף במלואו כפי שהוא מוצג בדפדפן. במקרה של ספרייה, שמה צריך להסתיים בסימן /.  ניתן להשתמש בתו הכללי לחיפוש (*) כממלא מקום תחיליות, סיומות או מחרוזת שלמה.
  • Allow: [חובה להשתמש פעם אחת לפחות ברשומות Disallow או Allow בכל כלל] ספרייה או דף, המשוייכים לדומיין הבסיס, שיש לסרוק על ידי סוכן המשתמש שהוזכר למעלה. הוראה זו משמשת לביטול Disallow, כדי לאפשר סריקה של ספריית משנה או דף בספרייה לא מורשית. במקרה של דף, יש לציין את שם הדף במלואו כפי שהוא מוצג בדפדפן. במקרה של ספרייה, שמה צריך להסתיים בסימן /. ניתן להשתמש בתו הכללי לחיפוש (*) כממלא מקום תחיליות, סיומות או מחרוזת שלמה.
  • Sitemap: [אופציונלי, אפס או יותר בכל קובץ] מיקום ה-sitemap של האתר. על כתובת האתר להיות מלאה; Google לא מעריכה או בודקת חלופות http/https/www.non-www. קובצי Sitemap הם שיטה טובה לציין איזה תוכן Google צריכה לסרוק, בניגוד לתוכן שהיא רשאית או לא רשאית לסרוק. למידע נוסף בנושא קובצי Sitemap. דוגמה:
    Sitemap: https://example.com/sitemap.xml
    Sitemap: http://www.example.com/sitemap.xml

המערכת תתעלם ממילות מפתח לא מוכרות.

קובץ דוגמה נוסף

קובץ robots.txt מורכב מקבוצת כללים אחת או יותר, כל אחת מהן נפתחת בשורה User-agent המציינת מה יעד הכללים. הנה קובץ המכיל שני כללים; הערות בגוף הקובץ מסבירות כל כלל:

.../Block googlebot from example.com/directory1/... and example.com/directory2 #
.../but allow access to directory2/subdirectory1 #
.All other directories on the site are allowed by default #
User-agent: googlebot
/Disallow: /directory1
/Disallow: /directory2
/Allow: /directory2/subdirectory1

.Block the entire site from anothercrawler #
User-agent: anothercrawler
/ :Disallow

תחביר מלא של robots.txt

כאן תמצאו מידע נוסף על התחביר המלא של קובצי robots.txt. יש לקרוא בעיון את כל המסמכים, שכן יש חלקים מורכבים בתחביר של קובצי robots.txt שחשוב לדעת אותם.

כללים שימושיים בקובצי robots.txt

הנה כמה כללים נפוצים ושימושיים בקובצי robots.txt:

כלל דוגמה
מניעת סריקה של האתר כולו. חשוב לזכור שבמקרים מסוימים עשויות כתובות אתרים להתווסף לאינדקס גם אם הן לא נסרקו. שימו לב: כלל זה לא תקף לגבי סורקי AdsBot שונים, אשר את שמם יש לציין באופן מלא.
User-agent: *‎
Disallow: /‎
מניעת סריקה של תיקייה והתוכן שלה על ידי קו נטוי אחרי שם התיקייה. יש לזכור שאין להשתמש בקובץ robots.txt כדי לחסום גישה לתוכן פרטי: למטרה זאת יש להשתמש באימות מתאים. כתובות אתרים שנחסמו בקובץ robots.txt עשויות להתווסף לאינדקס גם אם הן לא נסרקו. כמו כן, כל אחד יכול להציג את קובץ robots.txt, וכך לחשוף את מיקום התוכן הפרטי.
User-agent: *‎
Disallow: /calendar/‎
Disallow: /junk/‎
אפשרות גישה לסורק יחיד
User-agent: Googlebot-news
Allow:‎

User-agent: *‎
Disallow: /‎
אפשרות גישה לכל הסורקים, פרט לסורק יחיד
User-agent: Unnecessarybot
Disallow: /

User-agent: *
Allow: /

מניעת סריקה של דף אינטרנט יחיד באמצעות ציון הדף אחרי קו נטוי:

Disallow: /private_file.html

חסימת תמונה מסוימת ל'תמונות Google‏':

User-agent: Googlebot-Image
Disallow: /images/dogs.jpg

חסימת כל התמונות באתר ל'תמונות Google‏':

‎User-agent: Googlebot-Image
Disallow: /‎

מניעת סריקה של קבצים מסוג מסוים (לדוגמה: gif.):

User-agent: Googlebot
Disallow: /*.gif$

מניעת סריקה של האתר כולו, תוך הצגת מודעות AdSense בדפים אלה, ומניעת סורקי אינטרנט למעט Mediapartners-Google. יישום זה מסתיר את הדפים מתוצאות חיפוש, אבל סורק האינטרנט Mediapartners-Google עדיין יכול לנתח אותם כדי לקבוע אילו מודעות להציג למבקרים באתר.

User-agent: *‎
Disallow: /‎

User-agent: Mediapartners-Google‎
Allow: /‎
להתאמה עם כתובות אתרים המסתיימים במחרוזת מסוימת, משתמשים ב-$. למשל, הקוד בדוגמה חוסם כתובות אתרים שמסתיימות ב-‎.xls:
User-agent: Googlebot 
Disallow: /*.xls$‎
האם המאמר היה מועיל?
איך נוכל לשפר את המאמר?