Як створити та відправити файл robots.txt

Це вільний переклад статті “How to write and submit a robots.txt file” з офіційної довідки Google.

Що ви дізнаєтесь з цієї статті:

За допомогою файлу robots.txt ви можете вказувати, які файли на вашому сайті буде видно пошуковим роботам. Файл robots.txt знаходиться у кореневому каталозі вашого сайту. Наприклад, на сайті www.example.com він знаходиться за адресою www.example.com/robots.txt

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

Усі файли вважаються доступними для сканування, якщо ви не вказали інше у файлі robots.txt.

Нижче наведено приклад простого файлу robots.txt із двома правилами:

User-agent: Googlebot
Disallow: /nogooglebot/

User-agent: *
Allow: /

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

Пояснення:

  1. Забороняємо User-agent з назвою Googlebot сканувати будь-які URL-адреси, що починаються з https://example.com/nogooglebot/.
  2. Будь-яким іншим агентам користувача (User-agent) можна сканувати весь сайт. Це правило можна не вказувати, і результат буде тим самим. За замовчуванням User-agent-и можуть сканувати сайт повністю.
  3. Файл Sitemap цього сайту знаходиться за адресою https://www.example.com/sitemap.xml.

Докладнішу інформацію ви знайдете в розділі Синтаксис .

Основні рекомендації щодо створення файлу robots.txt

Робота з файлом robots.txt включає чотири етапи.

  1. Створіть файл robots.txt
  2. Додайте до нього правила
  3. Опублікуйте готовий файл у кореневому каталозі свого сайту
  4. Протестуйте свій файл robots.txt

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

Створити файл robots.txt можна у будь-якому текстовому редакторі, такому як Блокнот, TextEdit, vi або Emacs. Не використовуйте офісні програми (Word та подібні), оскільки вони часто зберігають файли в пропрієтарному форматі і додають в них зайві символи, наприклад фігурні лапки, які не розпізнаються пошуковими роботами. Обов’язково збережіть файл у кодуванні UTF-8, якщо вам буде запропоновано вибрати кодування.

Правила щодо формату та розташування файлу

  • Файл має називатися robots.txt
  • На сайті має бути лише один такий файл.
  • Файл robots.txt потрібно розмістити у кореневому каталозі сайту. Наприклад, на сайті https://www.example.com/він повинен розташовуватись за адресою https://www.example.com/robots.txt. Він не повинен знаходитись у підкаталозі (наприклад, за адресою https://example.com/pages/robots.txt). Якщо ви не знаєте, як отримати доступ до кореневого каталогу сайту, або у вас немає відповідних прав, зверніться до хостинг-провайдера (куди завантажувати файли?). Якщо у вас немає доступу до кореневого каталогу сайту, використовуйте альтернативний метод, наприклад, meta-теги .
  • Файл robots.txt можна використовувати на субдоменах (наприклад, https://website.example.com/robots.txt) або він може бути доступний через нестандартний порт (наприклад, https://example.com:8181/robots.txt)
  • Дія robots.txt поширюється лише на шляху в межах протоколу, хоста та порту, де він розміщений. Іншими словами, правило за адресою <strong>https://example.com/</strong>robots.txt діє тільки для файлів, що належать до домену https://example.com/, але не до субдомену, такого як https://m.example.com/, або не для інших протоколів, наприклад <strong>http</strong>://example.com/.
  • Файл robots.txt повинен бути текстовим файлом у кодуванні UTF-8 (що включає коди символів ASCII). Google може проігнорувати символи, які не стосуються UTF-8, в результаті чого будуть оброблені не всі правила файлу robots.txt.

Як написати правила у файлі robots.txt

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

  • Файл robots.txt складається з однієї або кількох груп (наборів правил).
  • Кожна група може містити кілька правил, по одному на рядок. Ці правила також називають директивами. Кожна група починається з рядка User-agent, що визначає, якому роботу адресовані правила у ній.
  • Група містить таку інформацію:
    • До якого агента користувача належать директиви групи.
    • До яких каталогів або файлів цей агент має доступ .
    • До яких каталогів або файлів у цього агента немає доступу .
  • Пошукові роботи обробляють групи по порядку зверху донизу. Агент користувача може наслідувати лише один, найбільш відповідний для нього набір правил, який буде оброблений першим. Якщо для одного агента користувача належить кілька груп, всі вони будуть об’єднані в одну.
  • За замовчанням агенту користувача дозволено сканувати будь-які сторінки та каталоги, доступ до яких не заблоковано правилом disallow.
  • Правила мають зазначатися з урахуванням регістру. Наприклад, правило disallow: /file.asp поширюється на URL https://www.example.com/file.asp, але не на https://www.example.com/FILE.asp.
  • Символ #означає початок коментаря. Під час обробки коментарі ігноруються.

Правила у файлах robots.txt, які підтримує робота Google

  • user-agent:(Обов’язкове правило може повторюватися в межах групи). Визначає, до якого клієнта (пошукового роботу) відносяться правила в групі.
    З такого рядка починається кожна група правил. Назви агентів користувача Google перелічені у цьому списку . Використовуйте знак *, щоб заблокувати доступ для всіх пошукових роботів (крім роботів AdsBot, яких потрібно вказувати окремо).
    Приклади:
# Example 1: блокувати тільки Googlebot
User-agent: Googlebot
Disallow: /

# Example 2: блокувати Googlebot та Adsbot
User-agent: Googlebot
User-agent: AdsBot-Google
Disallow: /

# Example 3: блокувати усіх робтів, окрім AdsBot (AdsBot потрібно вказувати окремо в правилах)
User-agent: *
Disallow: /
  • disallow:(кожне правило повинне містити не менше однієї директиви disallow або allow). Вказує на каталог або сторінку відносно кореневого домену, який не можна сканувати агенту користувача. Якщо правило стосується сторінки, має бути вказаний повний шлях до неї, як у адресному рядку браузера. На початку рядка має бути символ /. Якщо правило стосується каталогу, рядок має закінчуватись символом /.
  • allow:(кожне правило повинне містити не менше однієї директиви disallow або allow). Вказує на каталог або сторінку щодо кореневого домену, які можна сканувати агенту користувача. Використовується для того, щоб перевизначити правило disallow та дозволити сканування підкаталогу або сторінки у закритому для обробки каталозі. Якщо правило стосується сторінки, має бути вказаний повний шлях до неї, як у адресному рядку браузера. На початку рядка має бути символ /. Якщо правило стосується каталогу, рядок має закінчуватись символом /.
  • sitemap:(Необов’язкова директива, яка може повторюватися кілька разів або не використовуватись зовсім). Вказує на розташування файлу Sitemap, який використовується на сайті. URL файлу Sitemap має бути повним. Google не перебирає варіанти URL-адрес з префіксами http і https або з елементом www і без нього. З файлів Sitemap роботи Google отримують інформацію про те, який контент потрібно сканувати і як відрізнити його від матеріалів, які можна обробляти. Детальніше…
    Приклади:
Sitemap: https://example.com/sitemap.xml
Sitemap: https://www.example.com/sitemap.xml

Всі правила, крім sitemap, підтримують знак підстановки *для позначення префікса або суфікса шляху, а також всього шляху.

Рядки, які не відповідають жодному з цих правил, ігноруються.

Ознайомтеся зі специфікацією Google для файлів robots.txt , де докладно описано всі правила.

Як завантажити файл robots.txt

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

Зверніться до свого хостинг-провайдера по додаткові інструкції або спробуйте самостійно знайти документацію (приклад запиту: “куди завантажувати файли сайту“).

Після завантаження файлу robots.txt перевірте, чи він доступний для роботів і чи може Google обробити його.

Як протестувати розмітку файлу robots.txt

Щоб переконатися, що завантажений файл robots.txt є загальнодоступним, відкрийте у браузері вікно в режимі інкогніто (або аналогічне) і перейдіть за адресою файлу. Приклад: https://example.com/robots.txt . Якщо ви бачите вміст файлу robots.txt, можна переходити до тестування розмітки.

Для цього Google пропонує два засоби:

  1. Інструмент перевірки файлу robots.txt у Search Console. Цей інструмент можна використовувати лише для файлів robots.txt, які вже доступні на вашому сайті.
  2. Якщо ви розробник, ми рекомендуємо скористатися бібліотекою з відкритим кодом , яка також застосовується в Google Пошуку. За допомогою цього інструмента файли robots.txt можна локально тестувати безпосередньо на комп’ютері.

Як відправити файл robots.txt у Google

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

Корисні правила

Нижче наведено кілька правил, які часто використовуються у файлах robots.txt.

Корисні правила
Це правило забороняє сканувати весь веб-сайт.Варто врахувати, що в деяких випадках URL-адреси сайту можуть індексуватися, навіть якщо вони не були проскановані. Зверніть увагу, що це правило не відноситься до робот AdsBot , яких потрібно вказувати окремо.
User-agent: *
Disallow: /
Це правило забороняє сканування каталогу з усім його вмістом.Щоб заборонити сканування цілого каталогу, поставте слеш після його назви.
Увага: не використовуйте файл robots.txt, щоб обмежити доступ до певного контенту. Натомість використовуйте автентифікацію відвідувачів.
URL адреси, сканування яких заборонено у файлі robots.txt, все ж таки можуть бути проіндексовані. Крім того, зловмисники можуть переглянути вміст файлу robots.txt і дізнатися, де знаходиться контент, який ви хочете приховати.
User-agent: *
Disallow: /calendar/
Disallow: /junk/
Disallow: /books/fiction/contemporary/
Це правило дозволяє сканувати сайт лише одному пошуковому роботу.Сканувати весь сайт може лише робот googlebot-news.
User-agent: Googlebot-news
Allow: /
User-agent: *
Disallow: /
Це дозволяє сканування всім пошуковим роботам крім одного.Робот Unnecessarybot не може сканувати сайт, а решта можуть.
User-agent: Unnecessarybot
Disallow: /
User-agent: *
Allow: /
Це правило забороняє сканування окремої сторінки.Наприклад, можна заборонити сканування сторінок useless_file.html та other_useless_file.html з каталога junk.
User-agent: *
Disallow: /useless_file.html
Disallow: /junk/other_useless_file.html
Це правило забороняє сканувати весь сайт за винятком певного підкаталогу.Пошуковим роботам надано доступ тільки до підкаталогу public.
User-agent: *
Disallow: /
Allow: /public/
Це правило приховує певне зображення від робота Google Картинок.Наприклад, ви можете заборонити сканування зображення dogs.jpg.
User-agent: Googlebot-Image
Disallow: /images/dogs.jpg
Це правило приховує всі зображення на сайті від робота Google Картинок.Google не зможе індексувати зображення та відео, які недоступні для сканування.
User-agent: Googlebot-Image
Disallow: /
Це правило забороняє сканування всіх файлів певного типу.Наприклад, ви можете заборонити роботам доступ до всіх файлів .gif.
User-agent: Googlebot
Disallow: /*.gif$
Це правило забороняє сканувати весь сайт, але він може оброблятися роботом Mediapartners-GoogleРобот Mediapartners-Google зможе отримати доступ до закритих від пошукового робота сторінок, щоб підібрати оголошення для показу тому чи іншому користувачеві.
User-agent: *
Disallow: /
User-agent: Mediapartners-Google
Allow: /
Скористайтеся знаками підстановки * та $, щоб зіставляти URL, які закінчуються певним рядком.Наприклад, можна виключити всі файли .xls
User-agent: Googlebot
Disallow: /*.xls$

Якщо ця інформація виявилася корисною – поділіться нею в соцмережах!