SEO з Ігорем Абрамовським
Що таке robots.txt і як він впливає на сканування сайту Googlebot?
Що таке файл robots.txt і як він працює? Пояснюємо директиви Disallow та Allow, використання символів, відмінності від noindex та перевірку Googlebot.

1. Що таке robots.txt і навіщо він потрібен?

Файл robots.txt — це текстовий файл у кодуванні UTF-8, який розміщується на вебсервері та містить інструкції для автоматичних сканерів за стандартом Robots Exclusion Protocol (RFC 9309).

Головне призначення: Він вказує пошуковим ботам (Googlebot, Bingbot, AI-краулерам), які саме сторінки чи розділи сайту дозволено або заборонено завантажувати (сканувати).

Практична користь: Дозволяє раціонально використовувати краулінговий бюджет (Crawl Budget) та берегти ресурси сервера, захищаючи його від нескінченних комбінацій фільтрів, сторінок внутрішнього пошуку, кошиків замовлень, автозгенерованих дублів або технічних параметрів.


2. Де знаходиться robots.txt і як Googlebot його знаходить?

Розташування: Файл має розміщуватися виключно у кореневому каталозі вашого домену за адресою https://example.com/robots.txt. Файл, збережений у підпапці (наприклад example.com/pages/robots.txt), буде повністю проігнорований роботами.

Окремі файли для субдоменів та протоколів: Файл діє лише на той хост, протокол (HTTP/HTTPS) та порт, де він розміщений. Субдомен m.example.com чи shop.example.com вимагає власного окремого файла robots.txt.

Як Googlebot шукає файл: Перед обходом будь-якої сторінки Googlebot першочергово надсилає запит до адреси /robots.txt.

Обробка кодів відповідей сервера:

2xx (OK): Файл зчитується й застосовується. Google кешує його на термін до 24 годин і зчитує максимум 500 КіБ тексту.

4xx (крім 429): Google розцінює це як відсутність обмежень і вільно сканує весь сайт.

5xx (Серверна помилка): Google тимчасово призупиняє сканування сайту, щоб не перевантажувати сервер.


3. Що означають директиви User-agent, Disallow та Allow?

User-agent: Вказує назву робота, для якого призначено наступний блок правил. Знак астериска (User-agent: *) застосовує правила до всіх сканерів.

Важливе правило: Якщо у файлі є специфічна група для User-agent: Googlebot, робот Google використовуватиме тільки свій блок і повністю проігнорує блок User-agent: *.

Disallow: Вказує відносний шлях до папки чи сторінки, сканування якої заборонено. Порожня директива (Disallow:) означає, що заборон немає.

Allow: Вказує шлях, який дозволено сканувати. Використовується для створення винятків із ширшого правила Disallow.

Правило пріоритету: У разі конфлікту правил Google обирає те, чий шлях має найбільшу кількість символів (найдовший збіг). Якщо довжина правил однакова, виграє менш суворе правило — тобто Allow.


4. Для чого в robots.txt вказують Sitemap?

Директива Sitemap задає повний, абсолютний URL до файлу XML-карти сайту (наприклад: Sitemap: https://example.com/sitemap.xml).

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

Директива є універсальною: вона не залежить від блоків User-agent, може розміщуватися у довільному місці файлу та повторюватися для кількох карт.


5. Як працюють символи * і $ у правилах?

Google та основні пошукові системи підтримують два спецсимволи:

* (астериск): Означає будь-яку послідовність із 0 або більше символів у даній позиції шляху.

Приклад: Disallow: /*.pdf закриє будь-який URL, що містить .pdf у будь-якій частині шляху.

$ (знак долара): Фіксує точний кінець URL-адреси.

Приклад: Disallow: /*.pdf$ закриє лише ті посилання, які закінчуються безпосередньо на .pdf. Якщо до URL додано UTM-мітку або параметр (/file.pdf?ref=1), таке посилання буде дозволено до обходу.


6. Чим блокування Crawling відрізняється від заборони Indexing?

Сканування (Crawling): Це процес звернення та завантаження файлу або сторінки роботом із сервера. robots.txt керує виключно скануванням.

Індексація (Indexing): Це процес аналізу, збереження копії сторінки у базі даних Google та її показ у пошуковій видачі.

Головна пастка: Щоб пошуковик прочитав заборону індексації (наприклад, метатег <meta name="robots" content="noindex"> або HTTP-заголовок X-Robots-Tag: noindex), робот мусить просканувати сторінку. Якщо сторінку закрити в robots.txt, робот не зможе її завантажити й ніколи не побачить тег noindex.


7. Чому заблокована через robots.txt сторінка все одно може з'явитися в Google?

Якщо сторінка закрита директивою Disallow, Googlebot не завантажує її контент. Проте, якщо на цей URL ведуть посилання з інших сторінок сайту або зовнішніх ресурсів, Google може додати цю адресу до пошукового індексу на основі зовнішніх текстуальних підказок (анкорів).

У результатах пошуку така сторінка відображатиметься як голий URL без текстового опису (сніпета).


8. Чим robots.txt відрізняється від noindex і canonical?

Інструмент

Мета

Сфера застосування

robots.txt

Керує скануванням (запобігає витраті краулінгового бюджету та перевантаженню сервера).

Файл у корені сайту.

noindex

Повноцінно забороняє індексацію та видаляє сторінку з пошуку.

HTML-метатег у <head> або HTTP-заголовок X-Robots-Tag (вимагає дозволу на сканування).

canonical

Передає підказку (hint) про те, яку версію серед дублікатів вважати основною.

HTML-тег rel="canonical" (якщо закрити в robots.txt, робот не зчитає канонікал).


9. Які помилки robots.txt можуть зашкодити SEO та скануванню?

Випадковий деплой staging-правил на продакшн: Наявність правила User-agent: * Disallow: / на основному сайті закриває від сканування геть усі сторінки.

Блокування системних файлів CSS та JS: Googlebot рендерить сторінки як браузер. Блокування ресурсів стилів та скриптів заважає алгоритму правильно оцінити вміст.

Використання відносних посилань для Sitemap: Вказування Sitemap: /sitemap.xml є невалідним; необхідно писати лише повний абсолютний URL.

Забуті правила для специфічних ботів: Додавання блоку User-agent: Googlebot скасовує дію загальних правил із User-agent: * для Googlebot, якщо їх не продублювати.

Пропущений початковий сліш або нехтування регістром: Запис Disallow: something замість Disallow: /something, або плутанина між /blog/ та /Blog/ (значення є регістрозалежними).

Занадто короткі шаблони (Prefix Over-matching): Наприклад, правило Disallow: /t заблокує не лише папку /th/, а й будь-які шляхи, що починаються на літеру t.


10. Як перевірити robots.txt та визначити доступність URL?

Перевірка у браузері: Переконайтеся, що файл відкривається за адресою https://example.com/robots.txt, віддає HTTP-код 200 OK та текстовий формат.

Звіт "robots.txt" у Google Search Console: Показує знайдені файли для 20 основних хостів, останні дати перевірки, помилки синтаксису та дозволяє надіслати запит на терміновий повторний обхід.

Інструмент "Перевірка URL" (URL Inspection): У полі перевірки конкретного URL перегляньте поле "Crawl allowed? Yes/No", щоб побачити, яке саме правило robots.txt діє на цю сторінку.

Локальні інструменти: Розробники можуть тестувати файл на комп'ютері за допомогою відкритої бібліотеки Google's open source robots.txt library.


Продовжуйте навчання

Останні матеріали цього курсу

Обговорення та запитання (0)

Поки що тут немає запитань або коментарів. Будьте першим, хто розпочне обговорення.

Додати повідомлення

Тип повідомлення