Що таке навіщо і як його використовувати

Технічні аспекти створеного сайту грають не менш важливу роль для просування сайту в пошукових системах, ніж його наповнення. Одним з найбільш важливих технічних аспектів є індексування сайту, т. Е. Визначення областей сайту (файлів і директорій), які можуть або не можуть бути проіндексовані роботами пошукових систем. Для цих цілей використовується спеціальний файл robots.txt.
2. Поняття файлу robots.txt і вимоги, що пред'являються до нього

Файл /robots.txt призначений для вказівки всім пошуковим роботам (spiders) індексувати інформаційні сервера так, як визначено в цьому файлі, тобто тільки ті директорії і файли сервера, які не описані в /robots.txt. Цей файл повинен містити 0 або більше записів, які пов'язані з тим чи іншим роботом (що визначається значенням поля agent_id) і вказують для кожного робота або для всіх відразу, що саме їм не треба індексувати.

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


 всі букви в назві файлу повинні бути прописними, т. Е. Повинні мати нижній регістр:
robots.txt - правильно,
Robots.txt або ROBOTS.TXT - неправильно;

 файл robots.txt повинен створюватися в текстовому форматі Unix. При копіюванні даного файлу на сайт, ftp-клієнт повинен бути налаштований на текстовий режим обміну файлами;

 файл robots.txt повинен бути розміщений в кореневому каталозі сайту.
3. Вміст файлу robots.txt
Файл robots.txt включає в себе два записи: «User-agent» і «Disallow». Назви цих записів не чутливі до регістру букв.
Деякі пошукові системи підтримують ще і додаткові записи. Так, наприклад, пошукова система «Yandex» використовує запис «Host» для визначення основного дзеркала сайту (основне дзеркало сайту - це сайт, що знаходиться в індексі пошукових систем).
Кожен запис має своє призначення і може зустрічатися кілька разів, в залежності від кількості закриваються від індексації сторінок або (і) директорій і кількості роботів, до яких Ви звертаєтесь.

Передбачається наступний формат рядків файлу robots.txt:

імя_запісі [необов'язкові
прогалини]: [необов'язкові
прогалини] значення [необов'язкові пропуски]

Щоб файл robots.txt вважався вірним, необхідно, щоб, як мінімум, одна директива «Disallow» була присутня після кожного запису «User-agent».
Повністю порожній файл robots.txt еквівалентний його відсутності, що передбачає дозвіл на індексування всього сайту.

Запис «User-agent» повинна містити назву пошукового робота. В даному записі можна вказати кожному конкретному роботу, які сторінки сайту індексувати, а які ні.

Приклад запису «User-agent», де звернення відбувається до всіх пошукових систем без винятків і використовується символ «*»:
User-agent: *

Приклад запису «User-agent», де звернення відбувається тільки до робота пошукової системи Rambler:
User-agent: StackRambler

Робот кожної пошукової системи має свою назву. Існує два основних способи дізнатися його (назва):


 на сайтах багатьох пошукових систем присутній спеціалізований розділ «допомога веб-майстру», в якому часто вказується назва пошукового робота;

Запис «Disallow» повинна містити приписи, які вказують пошуковому роботу із запису «User-agent», які файли або (і) каталоги індексувати заборонено.
Розглянемо різні приклади записи «Disallow».

Приклад (сайт повністю відкритий для індексування):
Disallow:

Приклад (сайт повністю заборонений до індексації. Для цього використовується символ «/»): Disallow: /

Приклад (для індексування заборонений файл «page.htm», що знаходиться в кореневому каталозі і файл «page2.htm», що розташовується в директорії «dir»):
Disallow: /page.htm
Disallow: /dir/page2.htm

Приклад (для індексування заборонені директорії «cgi-bin» і «forum» і, отже, весь вміст даної директорії):
Disallow: / cgi-bin /
Disallow: / forum /

Можливо закриття від індексування ряду документів і (або) директорій, які починаються з одних і тих же символів, використовуючи тільки один запис «Disallow». Для цього необхідно прописати початкові однакові символи без закриває похилій риси.

Приклад (для індексування заборонені директорія «dir», а так само всі файли і директорії, що починаються буквами «dir», т. Е. Файли: «dir.htm», «direct.htm», директорії: «dir», «directory1 »,« directory2 »і т. д.):
Disallow: / dir

Деякі пошукові системи дозволяють використання регулярних виразів в запису «Disallow». Так, наприклад, пошукова система «Google» підтримує в записі «Disallow» символи «*» (означає будь-яку послідовність символів) і «$» (закінчення рядка). Це дозволяє заборонити індексування певного типу файлів.

Приклад (заборона індексації файлів з розширенням «htm»):
Disallow: * .htm $

Запис «host» використовується пошуковою системою «Yandex». Вона необхідна для визначення основного дзеркала сайту, т. Е. Якщо сайт має дзеркала (дзеркало - це часткова або повна копія сайту. Наявність дублікатів ресурсу буває необхідно власникам високовідвідуваних сайтів для підвищення надійності та доступності їх сервісу), то за допомогою директиви «Host» можна вибрати те ім'я, під яким Ви хочете бути проіндексовані. В іншому випадку «Yandex» вибере головне дзеркало самостійно, а інші імена будуть заборонені до індексації.

З метою сумісності з пошуковими роботами, які при обробці файлу robots.txt не сприймають директиву Host, необхідно додавати запис «Host» безпосередньо після записів Disallow.

Приклад: www.site.ru - основне дзеркало:
Host: www.site.ru

4. Приклади файлів robots.txt

Приклад файлу robots.txt, який дозволить всім роботам індексування всього сайту:

User-agent: *
Disallow:
Host: www.site.ru

Приклад файлу robots.txt, який забороняє всім роботам індексування сайту:

User-agent: *
Disallow: /
Host: www.site.ru

Приклад файлу robots.txt, який забороняє всім роботам індексування директорії «abc», а так само всіх директорій і файлів, що починаються з символів «abc».

User-agent: *
Disallow: / abc
Host: www.site.ru

Приклад файлу robots.txt, який забороняє індексування сторінки «page.htm», що знаходиться в кореневому каталозі сайту, пошуковим роботом «googlebot»:

User-agent: googlebot
Disallow: /page.htm
Host: www.site.ru

Приклад файлу robots.txt, який забороняє індексування:

- роботу «googlebot» - сторінки «page1.htm», що знаходиться в директорії «directory»;
- роботу «Yandex» - все директорії і сторінки, що починаються символами «dir» (/ dir /, / direct /, dir.htm, direction.htm, і т. Д.) І знаходяться в кореневому каталозі сайту.

User-agent: googlebot
Disallow: /directory/page1.htm

User-agent: Yandex
Disallow: / dir
Host: www.site.ru

5. Помилки, пов'язані з файлом robots.txt

Одна з найпоширеніших помилок - перевернутий синтаксис.

неправильно:
User-agent: *
Disallow: Yandex

правильно:
User-agent: Yandex
Disallow: *

Запис «Disallow» містить кілька директив.

неправильно:
User-agent: *
Disallow: / dir / / cgi-bin / / forum /

правильно:
User-agent: *
Disallow: / dir /
Disallow: / cgi-bin /
Disallow: / forum /

Помилка при копіюванні файлу. Часто robots.txt копіюється в форматі не Unix, а Dos. Незважаючи на те, що через поширеність даної помилки багато пошукові роботи вже можуть правильно розуміти дані з robots.txt, це вважається помилкою.

Якщо при обробці помилки 404 (документ не знайдене), веб-сервер видає спеціальну сторінку, і при цьому файл robots.txt відсутня, то можлива ситуація, коли пошуковому роботу при запиті файлу robots.txt видається та сама спеціальна сторінка, ніяк не є файлом управління індексування.

Помилка, пов'язана з неправильним використанням регістра в файлі robots.txt. Наприклад, якщо необхідно закрити директорію «cgi-bin», то в запису «Disallow» не можна писати назву директорії в верхньому регістрі «cgi-bin».

неправильно:
User-agent: *
Disallow: / CGI-BIN /

правильно:
User-agent: *
Disallow: / cgi-bin /

Помилка, пов'язана з відсутністю відкриває похилій риси при закритті директорії від індексування.

неправильно:
User-agent: *
Disallow: dir

User-agent: *
Disallow: page.html

правильно:
User-agent: *
Disallow: / dir

User-agent: *
Disallow: /page.html

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