Перейти до вмісту
🚀
Основи SEO
Урок 16 з 16 · Технічні основи
БЕЗКОШТОВНО +30 XP

robots.txt: обхід, а не індексування

robots.txt керує тим, як робот виконує обхід сайту, а не його індексуванням. Різниця не академічна: одним рядком у цьому файлі можна обнулити видимість сайту, а спроба прибрати ним сторінку з пошуку зазвичай не працює — і документація пояснює чому.

Урок побудовано за специфікацією Google: вступ до robots.txt і як Google інтерпретує файл. Другий документ читають рідко, а в ньому описано поведінку, з якою стикаються всі: кешування, відповіді сервера і ліміти.

📊
Алекс, стажер · Середа, 09:15
Відкриваю Google Search Console. Трафік: 0. Сторінок в індексі: 0 з 847. Це неможливо: учора карта сайту була чиста, сервер відповідав 200, а сьогодні Google наче не може зайти на сайт.
😤
Генеральний директор · 09:18
«АЛЕКС. ТРАФІК ЗНИК. ЧОМУ ІНДЕКСУЄТЬСЯ НУЛЬ СТОРІНОК ІЗ 847?!»
User-agent: *
Disallow: /

# тимчасово закрити сайт від ботів
# не забути повернути перед релізом

Що робить robots.txt

robots.txt — текстовий файл у корені хоста: https://example.com/robots.txt. Він каже добросовісним роботам, які адреси можна і не можна сканувати. Основне його завдання, як формулює документація, — не перевантажувати сайт запитами.

Ключова фраза звідти ж: це не механізм, щоб прибрати сторінку з Google. Для цього є noindex або захист паролем.

Різниця між обходом та індексуванням — те, на чому спотикаються найчастіше. Disallow забороняє роботу зайти на сторінку. Але якщо на неї посилаються з інших сайтів, Google може проіндексувати саму адресу, не заходячи на неї: у видачі з'явиться посилання без опису. Це прямо описано в документації й означає просту річ — закривши сторінку від обходу, ви не прибрали її з пошуку, а лише позбавили Google можливості зрозуміти, що на ній.

Із цього ж випливає головна пастка: якщо сторінку закрито в robots.txt, робот не побачить на ній noindex. Дві заборони, поставлені разом, гасять одна одну. Терміни — у глосарії: robots.txt і noindex.

Базовий синтаксис

User-agent: *
Disallow: /admin/
Disallow: /cart/
Allow: /
РядокЩо означаєКоментар
User-agent: *Правила для всіх роботівДля окремого робота можна вказати Googlebot, Googlebot-Image тощо.
Disallow: /admin/Не обходити всі адреси, що починаються з /admin/Шлях чутливий до регістру: /Private/ і /private/ різні.
Allow: /Дозволити обхід решти сайтуНайчастіше цей рядок можна не писати, але для новачка він робить намір очевидним.
Sitemap: https://example.com/sitemap.xmlПідказати шлях до XML-карти сайтуЦей рядок можна розміщувати окремо від груп правил.

Межі файлу і ліміти

Три речі зі специфікації, які економлять години налагодження.

ПравилоЩо це означає на практиці
Файл діє на свій протокол, хост і портrobots.txt для https://example.com не керує обходом http://example.com і піддомену shop.example.com — у кожного свій файл
Google враховує не більше 500 КіБУсе, що за цією межею, ігнорується. Величезний файл із тисячами рядків — ознака того, що правила час узагальнити
Шляхи чутливі до регістру/Private/ і /private/ — різні правила

Синтаксис цілком, із прикладами директив і порядком застосування правил, описано в посібнику зі створення файлу.

Що закривати, а що ні

Зазвичай можна закриватиКраще не закривати
/admin/, /login/, кошик, внутрішній пошук, нескінченні фільтри й сортуванняГоловну, категорії, картки товарів, статті, важливі посадкові сторінки
Адреси, які марно витрачають обхід: параметри сортування, календарні пастки, службові точкиCSS, JS і зображення, якщо без них Google гірше розуміє сторінку
Staging краще закривати паролем; robots.txt тут лише підказка, а не захистСторінки, на яких стоїть noindex: робот має зайти і побачити цю директиву

Небезпечні рядки

User-agent: *
Disallow: /

Ця комбінація закриває від обходу весь сайт. Іноді її ставлять на dev-версії і забувають прибрати при релізі. Для SEO це один із найшвидших способів обнулити видимість.

User-agent: *
Disallow: /*?sort=
Disallow: /*?filter=

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

Що відбувається, коли файл недоступний

Про це не думають, доки не станеться. А стається регулярно: сервер ліг, деплой зламав маршрут, CDN віддав помилку. Поведінку Google описано в специфікації, і вона різна для різних відповідей.

Відповідь сервераЩо робить Google
4xx, окрім 429Вважає, що файлу немає взагалі, і обмежень на обхід немає. Відповідь 404 на robots.txt — нормальна ситуація, а не проблема
5xxПерші 12 годин припиняє обхід сайту, продовжуючи запитувати файл. Далі до 30 днів використовує останню вдалу версію
РедиректПроходить не менше п'яти переходів, потім вважає це відповіддю 404
⚠️ Рядок про 5xx — найбільш недооцінений. Сервер, який годину віддає помилку на /robots.txt, зупиняє обхід усього сайту, а не лише цього файлу.

І ще одне, через що здається, що правка не спрацювала: Google кешує вміст файлу зазвичай до доби. Прибравши помилковий Disallow: /, ви не побачите ефекту миттєво — це нормально, а не привід правити файл ще раз.

Правило для noindex

Якщо мета — прибрати сторінку з пошуку, не починайте з Disallow. Залиште сторінку доступною для обходу і поставте:

<meta name="robots" content="noindex">

Для файлів, у яких немає HTML — PDF, зображень — використовується заголовок X-Robots-Tag. Обидва способи і їхній синтаксис описані в документації про мета-тег robots, а загальний порядок видалення сторінки — у посібнику про блокування індексування.

Послідовність важлива: спершу дайте Google побачити noindex і прибрати адресу з індексу, і лише потім, якщо треба, обмежуйте обхід. У зворотному порядку сторінка лишиться у видачі — без опису і без можливості це виправити.

Нормальний robots.txt для невеликого сайту

User-agent: *
Disallow: /admin/
Disallow: /cart/
Disallow: /checkout/
Disallow: /search

Sitemap: https://example.com/sitemap.xml

Як перевірити файл

Перевірка займає п'ять хвилин і робиться трьома способами, від швидкого до точного.

  1. Відкрийте /robots.txt у браузері. Файл віддається з кодом 200? Чи немає в ньому Disallow: / для бойового сайту?
  2. Подивіться звіт robots.txt у Search Console: яку версію файлу Google бачить зараз і коли її отримав. Тут само видно помилки розбору.
  3. Перевірте конкретну адресу через інструмент перевірки URL. Якщо причина — «Заблоковано у файлі robots.txt», ви знайшли проблему. Масово це робить аудит URL.

Скільки сторінок випало з індексу і чому, показує звіт про індексування; розбіжність між тим, що є на сайті, і тим, що бачить пошук, — розрив охоплення. Терміни — у глосарії: краулінговий бюджет і покриття індексу.

Практика: перевірте свій robots.txt

П'ять кроків, десять хвилин:

  1. Відкрийте https://ваш-домен/robots.txt. Прочитайте файл цілком — зазвичай це двадцять рядків, і половина з них давно не потрібна.
  2. Випишіть кожен рядок Disallow і дайте відповідь, що саме він закриває. Якщо відповіді немає, рядок кандидат на видалення.
  3. Перевірте, чи не закриті CSS, JS і зображення. Без них Google гірше розуміє сторінку — подивіться на неї очима робота через аналізатор сторінки.
  4. Переконайтеся, що жодна сторінка з noindex не закрита в robots.txt одночасно. Це найчастіша пара помилок, і вона лишає сторінку у видачі назавжди.
  5. Перевірте піддомени: у кожного свій файл. Обхід усього сайту покаже краулер, а стан карти сайту — моніторинг sitemap.

Як зрозуміти, що з файлом усе гаразд

Ознака не в тому, що файл «правильний», а в тому, що ви можете пояснити кожен його рядок. robots.txt — рідкісний випадок, коли короткий файл кращий за докладний: що менше правил, то менше способів випадково закрити потрібне.

Перевірити себе можна трьома питаннями. Чи знаєте ви, що закриває кожен рядок у вашому файлі? Чи розумієте різницю між «не обходити» і «не індексувати»? Чи помітили б ви Disallow: /, що потрапив на прод, того самого дня?

Чого чекати не варто: що robots.txt прибере сторінку з пошуку або захистить закритий розділ. Файл публічний — будь-хто може його відкрити, — і перелічені в ньому шляхи видно всім. Секретні каталоги в ньому не ховають, а рекламують.

Що далі

Це останній урок курсу «Основи SEO». Якщо починали не з початку, варто повернутися до Google Search Console: майже кожна перевірка з цього уроку робиться там. Попередній урок, про платформи та інструменти, — тут.

😌
Алекс · 09:45
Прибрав Disallow: /, лишив закритими лише службові розділи і додав карту сайту. Тепер Google знову зможе обійти важливі сторінки — щойно оновить кеш файлу.
🎯
Завдання до уроку
Перевірте розуміння та отримайте +20 XP
← SEO-платформи: факти проти оцінок
Урок 16 з 16
Перейти до завдання →