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

Файл robots.txt

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

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

Логіни та паролі баз данных у загальному доступі

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

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

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

Як створити файл 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

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

Clean-param: ref /catalog/dveri

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

Символи підстановки в 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%80%D0%B7%D0%B8%D0%BD%D0%B0

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

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

Правильно:

Sitemap: https://xn--80arbjktj.com/admin/sitemap1.xml

6. Дуже багато правил – великий розмір файлу. Якщо файл robots.txt важить більше 32 КБ, то він не обробляється і вважається таким, що дозволяє індексацію всього вмісту сайту.

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

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

Можливо, вас зацікавить

post thumbnail

Шифрування: типи і алгоритми. Що це, чим відрізняються і де використовуються?

Багато хто до цих пір недооцінює важливість SSL сертифікатів, але ж їх технологія лежить...

Angela Beklemysheva | Оновлено: 22.12.2021

post thumbnail

Кроки для підвищення безпеки з’єднання

У зв’язку з посиленою активністю компанії Google, спрямованої на Безпеку в Інтернеті, а також...

Diana Honcharenko | Оновлено: 02.11.2021