Robots.txt: שליטה בסריקה של Googlebot, חסימת תיקיות, הנחיות קצב סריקה ושיטות עבודה מומלצות ל-SEO.

Robots.txt הוא קובץ פשוט אך רב-עוצמה, השולט באופן שבו מנועי חיפוש סורקים את האתר שלכם. הוא ממוקם בכתובת `https://example.com/robots.txt` ומכיל כללים המפרטים אילו עמודים ותיקיות Google, Bing ובוטים נוספים רשאים לסרוק. Robots.txt מסייע לכם לנהל את תקציב הסריקה (מספר העמודים ש-Google סורקת מדי יום), מונע בזבוז סריקה על עמודים לא חשובים, ושומר על תוכן פרטי מחוץ לתוצאות החיפוש.
לרוב האתרים יש קובץ robots.txt, אך רבים מהם מוגדרים בצורה שגויה. קובץ robots.txt שהוגדר בצורה שגויה עלול לחסום בטעות עמודים חשובים, ולבזבז פוטנציאל דירוג. קובץ robots.txt המוגדר כראוי משפר את יעילות הסריקה ומגן על הפרטיות של האתר שלכם. מדריך זה סוקר את התחביר של robots.txt, שיטות עבודה מומלצות ודוגמאות מהעולם האמיתי.
Robots.txt הוא קובץ טקסט מתוקנן המעביר הוראות סריקה לבוטים של מנועי חיפוש. כאשר בוט מבקר באתר שלכם בפעם הראשונה, הוא מבקש את `/robots.txt` לפני שהוא סורק כל דבר אחר. הבוט קורא את הכללים ופועל לפיהם (בהנחה שמדובר בבוט הפועל בהתנהגות תקינה).
התיעוד של Google בנושא robots.txt הוא המקור הרשמי לתקן. פורמט robots.txt נוצר בשנת 1994 ואומץ באופן נרחב. כל מנועי החיפוש המרכזיים (Google, Bing, Baidu) מכבדים את robots.txt.
חשוב: Robots.txt הוא הנחיה, לא חומת אש. בוטים הפועלים בהתנהגות תקינה (Google, Bing) מכבדים את כללי robots.txt. בוטים זדוניים וכלי scraping מתעלמים מ-robots.txt. השתמשו ב-robots.txt כדי לנהל את הסריקה של מנועי החיפוש, לא כדי לחסום האקרים או כלי scraping. לצורך אבטחה, השתמשו בכלים ברמת השרת.
Robots.txt משתמש בתחביר טקסט פשוט. לכל כלל יש שני חלקים: User-agent (לאיזה בוט הכלל חל) ונתיבי Disallow (אילו עמודים לחסום).
דוגמה בסיסית:
User-agent: *
Disallow: /admin/
Disallow: /staging/
Sitemap: https://example.com/sitemap.xml
הוראה זו מורה לכל הבוטים (`*` פירושו הכול) לא לסרוק את התיקיות `/admin/` ו-`/staging/`. השורה Sitemap מורה לבוטים היכן ממוקם מפת האתר שלכם.
User-agent: \* פירושו כל הבוטים. ניתן גם לציין בוטים ספציפיים:
`User-agent: Googlebot` חל רק על הבוט של Google. `User-agent: Bingbot` חל רק על הבוט של Bing. ניתן לכלול מספר קטעי User-agent עם כללים שונים.
Disallow: /path/ מורה לבוטים לא לסרוק את הנתיב הזה. Disallow: / חוסם את האתר כולו. Disallow: (ריק) מאפשר הכול. ניתן לרשום מספר כללי Disallow עבור כל User-agent.
Allow: /path/ מאפשר סריקה של נתיב מסוים גם אם תיקיית אב חסומה. לדוגמה: Disallow: /temp/ אך Allow: /temp/important/ מאפשר סריקה רק של תת-התיקייה /important/.
דפוס 1: חסימת עמודי ניהול
User-agent: *
Disallow: /admin/
Disallow: /user/
Disallow: /account/
הוראה זו חוסמת עמודי ניהול, משתמשים וחשבונות מפני סריקה. עמודים אלה בדרך כלל אינם מיועדים למנועי חיפוש.
דפוס 2: חסימת סביבת staging
User-agent: *
Disallow: /staging/
Disallow: /test/
מונע מבוטים לסרוק גרסאות בדיקה או staging של האתר שלכם.
דפוס 3: חסימת סוגי קבצים ספציפיים
User-agent: *
Disallow: /*.pdf
Disallow: /*.zip
מונע מבוטים לסרוק קבצי PDF ו-ZIP. הדבר שימושי אם יש לכם קבצי PDF רבים שאינכם רוצים שיאונדקסו.
דפוס 4: האטת בוטים המעמיסים על השרת שלכם
User-agent: AhrefsBot
Disallow: /
User-agent: SemrushBot
Crawl-delay: 10
חוסם לחלוטין את הבוט של Ahrefs (אם אינכם רוצים שהאתר שלכם ייסרק על ידי כלי SEO). מאט את הבוט של Semrush על ידי הוספת השהיה של 10 שניות בין בקשות. Crawl-delay שימושי עבור בוטים אגרסיביים העמוסים על השרת שלכם.
דפוס 5: אפשור הכול (ברירת מחדל)
User-agent: *
Disallow:
זוהי ברירת המחדל. Disallow ריק פירושו לאפשר הכול. ניתן גם להשמיט את robots.txt לחלוטין אם ברצונכם שכל התוכן יהיה ניתן לסריקה.
Robots.txt חוסם סריקה. Meta robots noindex חוסם אינדוקס. אלה משרתים מטרות שונות.
השתמשו ב-robots.txt כאשר: אתם רוצים לחסוך בתקציב הסריקה. יש לכם תוכן כפול שאין לסרוק. יש לכם עמודי ניהול שאסור לבוטים לגעת בהם. אתם רוצים להאט בוטים אגרסיביים.
השתמשו ב-meta robots noindex כאשר: אתם רוצים שעמוד ייסרק אך לא יאונדקס (כדי לראות שגיאות ובעיות). אתם רוצים למנוע אינדוקס אך עדיין לאפשר קישורים פנימיים וסריקה. אתם רוצים בסופו של דבר להסיר עמוד מהחיפוש אך לשמור עליו פעיל.
לדוגמה: עמודים ממוספרים (pagination) כמו `/products?page=2` ניתן לחסום ב-robots.txt כדי לחסוך בתקציב הסריקה (מכיוון ש-Google בדרך כלל מאחדת עימוד). אך ייתכן שתרצו שהם ייסרקו כדי לזהות קשרי canonical. במקרה כזה, השתמשו ב-canonicals במקום ב-robots.txt.
תקציב הסריקה הוא מספר כתובות ה-URL ש-Google סורקת מדי יום באתר שלכם. אתרים גדולים עם מיליוני עמודים אינם יכולים לגרום לכל העמודים להיסרק מדי יום. Google מקצה תקציב סריקה בהתאם לסמכות (authority) של האתר שלכם ולתדירות השינויים בו. תקציב הסריקה סופי. בזבוזו על עמודים לא חשובים משמעו שעמודים חשובים ייסרקו בתדירות נמוכה יותר.
שפרו את תקציב הסריקה על ידי חסימת עמודים שאין לסרוק: תוכן כפול, תוצאות חיפוש ממוספרות (pagination), עמודי חשבון משתמש, עמודי בדיקה. כל עמוד שאתם חוסמים מעניק ל-Google תקציב נוסף לסריקת התוכן החשוב שלכם.
מבזבזי תקציב סריקה נפוצים: עימוד אינסופי (מסנני מוצרים יוצרים כתובות URL בלתי מוגבלות), תוכן כפול עם פרמטרים שונים, מזהי session המצורפים לכל כתובת URL, עמודי לוח שנה/אירועים היוצרים כתובות URL אינסופיות. השתמשו ב-robots.txt כדי לחסום דפוסים אלה.
Google Search Console מציגה את סטטיסטיקות הסריקה של האתר שלכם. עקבו אחר בקשות הסריקה מדי יום. אם Google סורקת את אותם עמודים שוב ושוב מבלי לגלות תוכן חדש, בדקו מחדש את robots.txt ואת אסטרטגיית החסימה שלכם.
הכלילו את כתובת ה-URL של מפת האתר שלכם ב-robots.txt. הוסיפו `Sitemap: https://example.com/sitemap.xml` בסוף קובץ robots.txt שלכם. הדבר מורה ל-Google היכן למצוא את מפת האתר בפורמט XML שלכם. ניתן לרשום מספר מפות אתר אם יש לכם מספר קבצים.
דוגמה:
User-agent: *
Disallow: /admin/
Sitemap: https://example.com/sitemap.xml
Sitemap: https://example.com/sitemap-news.xml
רישום מפות אתר ב-robots.txt הוא אופציונלי (ניתן להגיש מפות אתר דרך Google Search Console), אך זוהי שיטת עבודה מומלצת.
ל-Google Search Console יש כלי לבדיקת robots.txt. עברו אל Settings > Crawling > Test robots.txt. הזינו כתובת URL וראו האם robots.txt חוסם אותה. הדבר בעל ערך רב לאימות הכללים שלכם לפני הפריסה.
בדקו תמיד לפני פריסת שינויים ב-robots.txt. טעות אחת (כמו `Disallow: /` החוסמת את האתר כולו) עלולה לפגוע קשות בדירוגים שלכם. השתמשו בכלי הבדיקה כדי לוודא ש:
העמודים החשובים אינם חסומים. עמודי הניהול חסומים. דפוסי תוכן כפול חסומים. אף נתיב קריטי אינו נחסם בטעות.
לאחר פריסת robots.txt, עקבו אחר דוח הסריקה (Crawl report) ב-Google Search Console כדי לזהות שינויים. אם קצב הסריקה יורד באופן בלתי צפוי, ייתכן שחסמתם בטעות תוכן חשוב.
טעות 1: חסימת CSS ו-JavaScript. אם אתם חוסמים `/css/` או `/js/` ב-robots.txt, Google לא תוכל לסרוק את ה-CSS וה-JavaScript שלכם. ללא CSS, Google לא יכולה לעבד (render) את העמודים שלכם כראוי. אל תחסמו CSS או JavaScript.
טעות 2: חסימת תוכן חשוב. בדקו תמיד לפני הפריסה. שגיאת הקלדה כמו `Disallow: /p` במקום `Disallow: /staging/` עלולה לחסום את `/products/` בטעות.
טעות 3: שימוש ב-robots.txt לצורכי אבטחה. אל תסתמכו על robots.txt כדי להגן על נתונים רגישים. עמודים רגישים מבחינה אבטחתית צריכים לדרוש אימות (authentication), ולא רק robots.txt. robots.txt הוא ציבורי וניתן לעקוף אותו בקלות.
טעות 4: robots.txt לא עקבי בין דומיינים. אם יש לכם מספר דומיינים, שמרו על מדיניות robots.txt עקבית. כללים שונים בטעות עלולים לגרום לבעיות ביעילות הסריקה.
טעות 5: חסימת מפת האתר עצמה. לעולם אל תחסמו את `/sitemap.xml` ב-robots.txt. Google צריכה לסרוק את מפת האתר כדי לגלות עמודים.
Crawl-delay ו-Request-rate: הנחיות אלה מאיטות בוטים. `Crawl-delay: 10` מוסיפה 10 שניות בין בקשות. `Request-rate: 1/10` מאפשרת בקשה אחת כל 10 שניות. השתמשו בהנחיות אלה עבור בוטים העמוסים על השרת שלכם. Google ממליצה להשתמש בהגדרות Search Console במקום בהנחיות אלה.
הנחיית Allow: מאפשרת סריקה של נתיב מסוים גם אם נתיב אב חסום. שימושית ליצירת חריגים. לדוגמה: `Disallow: /temp/` אך `Allow: /temp/keep/` מאפשר סריקה רק של תת-התיקייה keep.
מפרט ה-robots.txt של Google מתעד את כל ההנחיות הנתמכות. רוב התכונות נדרשות לעיתים רחוקות בלבד. הישארו עם ה-User-agent, Disallow ו-Sitemap הבסיסיים עבור רוב האתרים.
כללים ספציפיים ל-User-agent מאפשרים כללי סריקה שונים עבור בוטים שונים. ניתן לציין כללים עבור Googlebot, Bingbot ו-user-agents נוספים בנפרד. הדבר שימושי אם אתם רוצים ש-Google תסרוק את האתר כולו אך להגביל את Bing מגישה לחלקים מסוימים. ציינו את ה-user-agent בתחילת כל בלוק כללים:
`User-agent: Googlebot` מחיל כללים רק על הזוחל של Google. `User-agent: *` מחיל כללים על כל הבוטים. הכללים חלים על ה-user-agent הספציפי עד להנחיית ה-user-agent הבאה. ניתן ליצור מספר בלוקים של כללים עבור בוטים שונים.
הנחיות Crawl-delay ו-request-rate מודיעות לבוטים באיזו תדירות לסרוק. `Crawl-delay: 5` מורה לבוט להמתין 5 שניות בין בקשות. הדבר מפחית את העומס על השרת. `Request-rate: 1/10` מורה לבוט לבצע לכל היותר בקשה אחת כל 10 שניות. התיעוד של Google בנושא robots.txt מפרט את כל ההנחיות הנתמכות.
הנחיות מיקום Sitemap מודיעות לבוטים היכן למצוא את מפת האתר שלכם. `Sitemap: https://example.com/sitemap.xml` מפנה בוטים למפת האתר בפורמט XML שלכם. ניתן לציין מספר מפות אתר. הדבר מומלץ מכיוון שהוא מסייע לבוטים לגלות את כל העמודים שלכם ביעילות.
הנחיית Clean-param מסירה פרמטרים מכתובת ה-URL לפני הסריקה. `Clean-param: utm_source&utm_medium https://example.com` מורה ל-Google להתעלם מפרמטרי UTM באתר example.com. הדבר מונע מ-Google להתייחס לקישורים מתויגים כאל תוכן כפול. הנחיה זו פחות נפוצה כיום, מכיוון ש-Google מטפלת אוטומטית ברוב פרמטרי המעקב.
בדקו את קובץ robots.txt שלכם בכלי בדיקת robots.txt של Google Search Console. הכלי מציג אילו כתובות URL ייחסמו על ידי robots.txt שלכם עבור Googlebot. הדבר מונע חסימה בטעות של עמודים חשובים.
Robots.txt הוא קובץ פשוט אך קריטי לניהול הסריקה של מנועי חיפוש ולהגנה על הפרטיות של האתר שלכם. קובץ robots.txt המוגדר כראוי חוסם עמודים לא חשובים, חוסך בתקציב הסריקה, ומונע מתוכן כפול להיסרק פעמים רבות. קובץ robots.txt המוגדר בצורה שגויה עלול לחסום בטעות תוכן חשוב ולפגוע קשות בדירוגים שלכם.
בדקו תמיד שינויים ב-robots.txt לפני הפריסה. השתמשו בכלי הבדיקה של Google Search Console כדי לאמת את הכללים. עקבו אחר סטטיסטיקות הסריקה שלכם מדי חודש. חסמו תוכן לא חשוב ונהלו את תקציב הסריקה ביעילות. השתמשו בכלי לביקורת GEO SEO שלנו כדי לבדוק את הגדרת robots.txt שלכם ולזהות בעיות פוטנציאליות בסריקתיות ובאינדוקס בכל האתר שלכם.
לא. חסימת עמוד ב-robots.txt מונעת מ-Google לסרוק אותו, אך אינה מסייעת ל-SEO. אם אינכם רוצים שעמוד יאונדקס, השתמשו במקום זאת בתגית noindex. השתמשו ב-robots.txt כדי לחסוך בתקציב הסריקה.
לא. לעולם אל תחסמו CSS או JavaScript ב-robots.txt. Google זקוקה לגישה למשאבים אלה כדי להבין את העמוד שלכם באופן מלא. חסימתם מונעת מ-Google לעבד (render) את התוכן שלכם כראוי.
בדרך כלל אין צורך להגדיר קצב סריקה, אלא אם כן Google מבצעת יותר מדי בקשות. אם Google מנצלת את רוחב הפס שלכם עד תום, השתמשו בהנחיית Crawl-delay. רוב האתרים יכולים להתמודד עם קצב הסריקה המוגדר כברירת מחדל של Google.