Файл robots.txt і як його правильно налаштувати

Robots.txt – це файл, який розміщується в папці сайту на хостингу і містить правила індексування вашого сайту пошуковими системами. Як зрозуміло з назви, файл має звичайний текстовий формат. Якщо при зверненні в браузері до вашого сайту за посиланням виду http://site.com/robots.txt коректно відображається вміст файлу – значить він буде правильно прочитаний роботами пошукових систем.

Навіщо потрібен robots.txt?

Щоб в індекс пошукових систем не потрапили сторінки, яких там бути не повинно. Якщо файлу з настройками немає або ж він порожній або налаштований неправильно, то в індекс можуть потрапити критичні дані, такі як конфігураційні файли з паролями, посилання на адмінку, якісь системні файли і каталоги движку сайту. В результаті неправильних налаштувань пошукова система може проіндексувати і показати всім бажаючим, наприклад, логін-деталі для підключення до бази даних.

GoogleIndex

Сторінки, які потрібно закривати від індексації:

  • Сторінки пошуку по сайту
  • Кошик
  • Порівняння, сортування і фільтри товарів
  • Теги, якщо ви не можете їх оптимізувати і модерувати
  • Сторінки реєстрації і авторизації
  • Особистий кабінет і профілі користувачів
  • Системні файли і каталоги
  • Версії для друку
  • Порожні сторінки і т. д.

Блокувати індексацію слід для всіх тих сторінок, які не несуть користь для відвідувача, недопрацьовані, містять чутливі дані або є дублями.

Як створити файл robots.txt?

Структура файлу robots.txt має такий вигляд:

  • Пошуковий робот 1
  • Інструкції для робота 1
  • Додаткові опції

 

  • Пошуковий робот 2
  • Інструкції для робота 2
  • Додаткові опції

і т. д.

Порядок написання інструкцій не має значення, оскільки обробка їх відбувається від менш вкладеного до більш вкладеного. Регістр написання правил важливий: cart.php і Cart.PHP – це різні сторінки.

User-agent

Ця директива відповідає за ім’я робота, для якого будуть вказані правила в цій секції. Зазвичай для User-agent використовують два значення:

  • User-agent: * – для всіх роботів
  • User-agent: Yandex – для всіх роботів системи Yandex

Також при необхідності можна вказувати будь-які інші існуючі user-агенти.

Disallow

Відповідає за заборону індексації зазначених директорій. Не можна вказувати кілька папок в одному рядку, оскільки роботи не зможуть правильно інтерпретувати правило. Дана директива може бути проігнорована Googlebot, якщо на заборонені до індексації директорії є посилання на вашому сайті або інших сайтах.

Якщо ваш сайт знаходиться на стадії розробки і ви не хочете показувати його пошуковим системам, то заборонити індексування можна командами:

User-agent: *
Disallow: /

Не забудьте змінити ці налаштування після завершення всіх робіт зі створення сайту.

Allow

А ця директива, відповідно, відкриває доступ роботів до вказаних каталогах. Причому вказувати Allow: / не має сенсу, оскільки за замовчуванням індексація дозволена для всіх каталогів, на які не встановлено заборони (Disallow).

Allow застосовується зазвичай в комбінації з Disallow, наприклад:

Disallow: /
Allow: /catalog

Заборона індексації кореневої папки, але індексувати папку catalog можна.

Host

На даний момент директива не обробляється пошуковими роботами Google і Yandex (з березня 2018 року). Тому можна її не використовувати. Раніше директива Host вказувала на основне дзеркало вашого сайту:

Host: https://site.com

Зараз досить правильно налаштувати редіректи 301 з неосновних дзеркал на основне.

Sitemap

Вказує ботам, де знаходиться карта сайту, якщо це не стандартний шлях https://site.com/sitemap.xml. Важливо вказувати повну посилання на карту сайту, а не відносний шлях:

Sitemap: https://site.com/private/sitemaps/sitemap_new.xml

Ви можете вказувати різні карти для різних роботів при необхідності.

Crawl-Delay

Якщо роботи Yandex сильно навантажують хостинг, можна задати мінімальний інтервал між запитами. Наприклад:

Crawl-Delay: 10

Запис означає, що роботу дозволено робити запити не частіше, ніж раз в 10 секунд. На практиці це правило не завжди дотримується, а Googlebot і зовсім його ігнорує – швидкість обходу сайту регулюється в Search Console. Також вказавши інтервал, наприклад, 0.1 сек ви можете прискорити індексацію сайту. Не факт, що запити будуть приходити по 10 раз в секунду, але сайт точно буде проіндексований швидше. Будьте обережні з цією настройкою, якщо не впевнені, що ваш сервер витримає такий великий потік запитів.

Clean-param

Ця команда використовується досить рідко і покликана прибрати дублі сторінок, які утворюються різними utm-мітками, сесіями, угрупованнями, фільтрами. Наприклад, при переході на сторінку сайту в URL підставляється referrer – сайт звідки був зроблений перехід:

https://site.com/catalog/dveri?ref=google.com.ua&model_id=125
https://site.com/catalog/dveri?ref=yandex.ua&model_id=125
https://site.com/catalog/dveri?ref=ek.ua&model_id=125

Пошуковики вважатимуть цю сторінку за три різних. Щоб склеїти дублі, потрібно додати команду:

Символи підстановки

Символи підстановки в robots.txt використовуються для спрощення і скорочення записів.

Символ * – будь-яка послідовність символів.

Disallow: /images/*.jpg$

Запис означає: заборонити індексування всіх зображень jpg в папці images.

Символ $ – кінець рядка. Даний символ обмежує розкриття вмісту каталогів, наприклад:

Disallow: /images/$

Цей запис не дозволить потрапити в індекс елементам, що знаходяться безпосередньо в папці images, але елементи в папках /images/public1/, /images/public2/ і т. д. будуть індексуватися.

Символ # – коментування. Всі символи в рядку, що йдуть за цим символом будуть проігноровані ботами.

Які помилки часто допускають при написанні robots.txt?

  1. Ім’я робота в Disallow.
    Неправильно:

    Disallow: Yandex

    Правильно:

    User-agent: Yandex
    Disallow: /
  2. Кілька папок в одному рядку Disallow.Неправильно:
    Disallow: /admin/ /tmp/ /private/

    Правильно:

    Disallow: /admin/
    Disallow: /tmp/
    Disallow: /private/
  3. Сам файл повинен називатися тільки robots.txt, а не Robots.txt, ROBOTS.TXT і т. д.
  4. Не можна залишати порожнім правило User-agent, потрібно прописати * або ім’я робота, для якого далі будуть прописані правила.
  5. Імена папок і доменів кирилицею. URL потрібно писати в форматі URL-encode, а IDN-домени в puny-code.
    Неправильно:

    Disallow: /кошик/

    Правильно:

    Disallow: /%D0%BA%D0%BE%D1%88%D0%B8%D0%BA/

    Неправильно:

    Sitemap: https: //мійсайт.com/admin/sitemap1.xml

    Правильно:

    Sitemap: https://xn--80arbjktj.com/admin/sitemap1.xml
  6. Дуже багато правил – великий розмір файлу. Якщо файл robots.txt важить більше 32 КБ, то він не обробляється і вважається таким, що дозволяє індексацію всього вмісту сайту.

Сподіваємося, що ми змогли відповісти на деякі питання про налаштування robots.txt і процеси індексації в пошукових системах.

Нижче залишимо посилання з прикладами файлу robots.txt для популярних CMS. При використанні наведених файлів не забудьте змінити ім’я домену на ваше!

WordPress

Joomla

OpenCart

Bitrix

Drupal

MODX Evolution

MODX Revolution

Webasyst