Приклад robots txt для яндексу. Рекомендації щодо налаштування файлу robots txt. Директиви «Host:» та «Sitemap:»

Швидка навігація на цій сторінці:

Сучасна реальність така, що в Рунеті жоден сайт, що поважає себе, не може обходитися без файлу під назвою роботс.тхт - навіть якщо вам нічого забороняти від індексації (хоча практично на кожному сайті є технічні сторінки і дублюючий контент, що вимагають закриття від індексації), то як мінімум прописати директиву з www і без www для Яндекса однозначно варто — для цього і служать правила написання robots.txt, про які йтиметься нижче.

Що таке robots.txt?

Свою історію файл з такою назвою бере з 1994 року, коли консорціум W3C вирішив запровадити такий стандарт для того, щоб сайти могли надавати пошукові системи інструкціями з індексації.

Файл з такою назвою має бути збережений у кореневій директорії сайту, розміщення його у будь-яких інших папках не допускається.

Файл виконує такі функції:

  1. забороняє будь-які сторінки чи групи сторінок до індексації
  2. дозволяє будь-які сторінки або групи сторінок до індексації
  3. вказує роботу Яндекса, яке дзеркало сайту є головним (з www або без www)
  4. показує розташування файлу з карткою сайту

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

Директива allow самостійного значення не має, тому що за замовчуванням усі сторінки і так доступні для індексації. Вона працює у зв'язці з disallow — коли, наприклад, якась рубрика повністю закрита від пошукових систем, але ви хотіли б відкрити в ній ту чи окрему сторінку.

Вказівка ​​на головне дзеркало сайту також є одним з найважливіших елементів в оптимізації: пошукові системи розглядають сайти www.вашсайт.ру та вашсайт.ру як два різні ресурси, якщо ви їм прямо не вкажете інше. В результаті відбувається подвоєння контенту - поява дублів, зменшення сили зовнішніх посилань (зовнішні посилання можуть ставитися як з www, так і без www) і це може призвести до нижчого ранжирування в пошуковій видачі.

Для Google головне дзеркало прописується в інструментах Вебмайстра (http://www.google.ru/webmasters/), а ось для Яндекса ці інструкції можна прописати тільки в тому самому роботс.тхт.

Вказівка ​​на xml-файл з карткою сайту (наприклад sitemap.xml) дозволяє пошукачам виявити даний файл.

Правила вказівки User-agent

User-agent в даному випадку – це пошукова система. При написанні інструкцій необхідно вказати, чи будуть діяти на всі пошукові системи (тоді проставляється знак зірочки - *) або ж вони розраховані на якусь окрему пошукову систему - наприклад, Яндекс або Google.

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

User-agent: *

Для Яндекса:

User-agent: Yandex

Для Гугла:

User-agent: GoogleBot

Правила вказівки disallow та allow

По-перше, слід зазначити, що файл robots.txt для його валідності обов'язково повинен містити хоча б одну директиву disallow. Тепер, розглянувши застосування цих директив на конкретних прикладах.

За допомогою такого коду ви дозволяєте індексацію всіх сторінок сайту:

User-agent: * Disallow:

А за допомогою такого коду, навпаки, всі сторінки будуть закриті:

User-agent: * Disallow: /

Для заборони індексації конкретної директорії під назвою folder вкажіть:

User-agent: * Disallow: /folder

Можна використовувати також зірочки для встановлення довільної назви:

User-agent: * Disallow: *.php

Важливо: зірочка замінює назву файлу повністю, тобто не можна вказати file*.php, можна тільки *.php (але будуть заборонені всі сторінки з розширенням.php, щоб цього уникнути - можете вказати конкретну адресу сторінки).

Директива allow, як було зазначено вище, використовується для створення винятків у disallow (інакше вона не має сенсу, тому що сторінки за замовчуванням і так відкриті).

Наприклад, заборонимо до індексації сторінки в папці archive, але залишимо відкриту сторінку index.html з цієї директорії:

Allow: /archive/index.html Disallow: /archive/

Вказуємо хост та карту сайту

Хост – це головне дзеркало сайту (тобто назва домену плюс www або назва домену без цієї приставки). Хост вказується тільки для робота Яндекса (при цьому обов'язково має бути хоча б одна команда disallow).

Для вказівки host robots.txt повинен містити наступний запис:

User-agent: Yandex Disallow: Host: www.вашсайт.ру

Щодо карти сайту, то в robots.txt sitemap вказується простим прописанням повного шляху до відповідного файлу, із зазначенням доменного імені:

Sitemap: http://вашсайт.ру/sitemap.xml

Про те, як зробити картку сайту для WordPress, написано .

Приклад robots.txt для WordPress

Для wordpress інструкції необхідно вказувати таким чином, щоб закрити до індексації всі технічні директорії (wp-admin, wp-includes тощо), а також дублі сторінок, які створюються тегами, файлами rss, коментарями, пошуком.

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

User-agent: Yandex Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-login.php Disallow: /wp-register.php Disallow: /xmlrpc.php Disallow: /search Disallow: */trackback Disallow: */feed/ Disallow: */feed Disallow: */comments/ Disallow: /?feed= Disallow: /?s= Disallow: */page/* Disallow: */comment Disallow: */tag/* Disallow: */ attachment/* Allow: /wp-content/uploads/ Host: www..php Disallow: /wp-register.php Disallow: /xmlrpc.php Disallow: /search Disallow: */trackback Disallow: */feed/ Disallow: * /feed Disallow: */comments/ Disallow: /?feed= Disallow: /?s= Disallow: */page/* Disallow: */comment Disallow: */tag/* Disallow: */attachment/* Allow: /wp -content/uploads/ User-agent: * Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-login.php Disallow: /wp-register.php Disallow: /xmlrpc.php Disallow: /search Disallow: */trackback Disallow: */feed/ Disallow: */feed Disallow: */comments/ Disallow: /?feed= Disallow: /?s= Disallow: */page/* Disallow: */comment Disallow: */tag/ * Disallow: */attachment/* Allow: /wp-content/uploads/ Sitemap: https://www..xml

Завантажити файл robots.txt з нашого сайту можна по .

Якщо за підсумками прочитання цієї статті у вас залишилися питання - задавайте в коментарях!

1) Що таке пошуковий робот?
2) Що таке robots.txt?
3) Як створити robots.txt?
4) Що й навіщо можна записати у цей файл?
5) Приклади назв роботів
6) Приклад готового robots.txt
7) Як перевірити роботу файлу?

1. Що таке пошуковий робот?

Робот (англ. crawler)зберігає список URL, які він може проіндексувати, і регулярно викачує відповідні документи. Якщо при аналізі документа робот виявляє нове посилання, він додає його до свого списку. Таким чином, будь-який документ або сайт, на який є посилання, може бути знайдений роботом, а значить, пошуком Яндекса.

2. Що таке robots.txt?

Пошукові роботи шукають на сайтах насамперед файл robots.txt. Якщо у Вас на сайті є директорії, контент і тп, які Ви, наприклад, хотіли приховати від індексації (пошуковик не видавав інформацію по них. Наприклад: адмінка, інші панелі сторінки), то повинні уважно вивчити інструкцію по роботі з даним файлом.

robots.txt- це текстовий файл(.txt), що знаходиться в корені (коренової директорії) Вашого сайту. У ньому записуються інструкції для пошукових роботів. Ці інструкції можуть забороняти до індексації деякі розділи або сторінки на сайті, вказувати на правильне «дзеркалювання» домену, рекомендувати пошуковому роботу дотримуватись певного часового інтервалу між скачуванням документів із сервера тощо.

3. Як створити robots.txt?

Створити robots.txt дуже легко. Заходимо у звичайний текстовий редактор (або права кнопка миші – створити – текстовий документ), наприклад, Блокнот (Notepad). Далі створюємо текстовий файл і перейменовуємо його в robots.txt.

4. Що й навіщо можна записати у файл robots.txt?

Перед тим, як вказати команду пошуковику, потрібно визначитися, якого Боту вона буде адресована. Для цього існує команда User-agent
Нижче наведено приклади:

User-agent: * # написана після цього рядка команда буде звернена до всіх пошукових робіт
User-agent: YandexBot # звернення до основного робота індексації Яндекса
User-agent: Googlebot # звернення до основного роботу індексації Google

Дозволяємо та забороняємо індексацію
Для дозволу та заборони індексації є дві відповідні команди - Allow(можна) і Disallow(Не можна).

User-agent: *
Disallow: /adminka/ # забороняє всім роботам індексувати директорію adminka, в якій нібито адмін-панель

User-agent: YandexBot # команда нижче буде звернена до Яндекса
Disallow: / # забороняємо індексацію всього сайту роботом Яндекса

User-agent: Googlebot # команда нижче буде звернена до Google
Allow: /images # дозволяємо індексувати весь вміст директорії images
Disallow: / # а все інше забороняємо

Порядок не важливий

User-agent: *
Allow: /images
Disallow: /

User-agent: *
Disallow: /
Allow: /images
# і там, і там можна індексувати файли
# починаються з "/images"

Директива Sitemap
Ця команда вказує адресу картки вашого сайту:

Sitemap: http://yoursite.ru/structure/my_sitemaps.xml # Вказує адресу карти сайту

Директива Host
Ця команда вставляється в кінці вашого файлу і позначає головне дзеркало
1) прописується В КІНЦІ вашого файлу
2) вказується лише один раз. в іншому випадку приймається тільки перший рядок
3) вказується після Allow або Disallow

Host: www.yoursite.ru # дзеркало Вашого сайту

#Якщо www.yoursite.ru головне дзеркало сайту, то
#robots.txt для всіх сайтів-дзеркал виглядає так
User-Agent: *
Disallow: /images
Disallow: /include
Host: www.yoursite.ru

# за замовчуванням Google ігнорує Host, треба зробити так
User-Agent: * # індексують усі
Disallow: /admin/ # забороняємо індекс адміну
Host: www.mainsite.ru # вказуємо головне дзеркало
User-Agent: Googlebot # тепер команди для Google
Disallow: /admin/ # заборона для Google

5. Приклади назв роботів

Роботи Яндекса
Яндекс має кілька видів роботів, які вирішують різні завдання: один відповідають за індексацію зображень, інші за індексацію rss даних для збору даних по блогах, треті - мультимедійні дані. Найголовніший - YandexBot, він індексує сайт з метою скласти загальну базу даних по сайту (заголовки, посилання, текст тощо). Також є робот для швидкої індексації (індексація новин тощо).

YandexBot- Основний індексуючий робот;
YandexMedia- Робот, що індексує мультимедійні дані;
YandexImages- Індексатор Яндекс.Картинок;
YandexCatalog-- «простукувала» Яндекс.Каталогу, використовується для тимчасового зняття з публікації недоступних сайтів у каталозі;
YandexDirect- Робот Яндекс.Директа, особливим чином інтерпретує robots.txt;
YandexBlogs- Робот пошуку по блогах, що індексує пости та коментарі;
YandexNews- Робот Яндекс.Новин;
YandexPagechecker- валідатор мікророзмітки;
YandexMetrika- Робот Яндекс.Метрики;
YandexMarket- Робот Яндекс.Маркета;
YandexCalendar- Робот Яндекс.Календаря.

6. Приклад готового robots.txt

Прийшли наприклад готового файлу. Сподіваюся після наведених вище прикладів, Вам все буде зрозуміло.

User-agent: *
Disallow: /admin/
Disallow: /cache/
Disallow: /components/

User-agent: Yandex
Disallow: /admin/
Disallow: /cache/
Disallow: /components/
Disallow: /images/
Disallow: /includes/

Sitemap: http://yoursite.ru/structure/my_sitemaps.xml

Це текстовий файл (документ у форматі .txt), що містить чіткі вказівки для індексації конкретного веб-сайту. Інакше кажучи, цей файл вказує пошуковими системами, які сторінки веб-ресурсу необхідно проіндексувати, а які ні – заборонити до індексації.

Здавалося б, навіщо забороняти індексувати якийсь вміст сайту? Мовляв, нехай пошуковий робот індексує все без розбору, керуючись принципом: що більше сторінок, то краще! Так міркувати може лише дилетант від СЕО.

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

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

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

Щоб уникнути такої незавидної долі, веб-майстру необхідно вчасно подбати про створення правильного файлу robots.txt.

"User-agent:" - основна директива robots.txt

На практиці в robots.txt за допомогою спеціальних термінів прописуються директиви (команди), головною серед яких можна вважати директиву. User-agent: ». Остання використовується для конкретизації пошукового робота, якому надалі будуть надані ті чи інші вказівки. Наприклад:

  • User-agent: Googlebot– усі команди, які підуть після цієї базової директиви, стосуватимуться виключно пошукової системи Google (її індексуючого робота);
  • User-agent: Yandex– адресат у цьому випадку вітчизняний пошуковик Яндекс.

У файлі robots.txt можна звернутися до всіх інших пошукових систем разом узятих. Команда в цьому випадку виглядатиме так: User-agent: *. Під спеціальним символом "*" прийнято розуміти "будь-який текст". У нашому випадку – будь-які інші, окрім Яндекса, пошукові системи. Гугл, до речі, теж сприймає цю директиву на свій рахунок, якщо не звертатися особисто до нього.

Команда «Disallow:» – заборона індексації у robots.txt

Після основної директиви User-agent:, зверненої до пошукових систем, можуть дотримуватися конкретні команди. Серед них найпоширенішою можна вважати директиву « Disallow: ». За допомогою цієї команди пошуковому роботу можна заборонити індексувати веб-ресурс цілком або якусь його частину. Все залежить від того, яке розширення буде у цієї директиви. Розглянемо приклади:

User-agent: Yandex Disallow: /

Такого роду запис у файлі robots.txt означає, що пошуковому роботі Яндекса взагалі не дозволено індексувати даний сайт, оскільки забороняючий знак «/» стоїть у гордій самоті і не супроводжується якимись уточненнями.

User-agent: Yandex Disallow: /wp-admin

Як видно, цього разу уточнення є і стосуються вони системної папки wp-admin в . Тобто робот, що індексує, за допомогою цієї команди (прописаного в ній шляху) відмовиться від індексації всієї цієї папки.

User-agent: Yandex Disallow: /wp-content/themes

Така вказівка ​​роботу Яндекса передбачає його допуск у велику категорію. wp-content », в якій він може індексувати весь вміст, крім « themes ».

Досліджуємо «заборонені» можливості текстового документа robots.txt далі:

User-agent: Yandex Disallow: /index$

У цій команді, як випливає з прикладу, використовується ще один спеціальний знак "$". Його застосування підказує роботу, що не можна індексувати ті сторінки, посилання яких мають послідовність букв « index ». При цьому індексувати окремий файлсайту з аналогічною назвою « index.php » роботу не заборонено. Таким чином, символ «$» застосовується у разі, коли необхідний вибірковий підхід до заборони індексації.

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

User-agent: Yandex Disallow: *&*

Ця команда наказує пошуковому роботу Яндекса не індексувати всі сторінки веб-сайту, в URL-адресах яких зустрічається символ «&». Причому цей знак на засланні повинен стояти між будь-якими іншими символами. Однак може бути й інша ситуація:

User-agent: Yandex Disallow: *&

Тут заборона індексації стосується всіх сторінок, посилання яких закінчуються на «&».

Якщо із забороною індексації системних файлів сайту питань не повинно бути, то з приводу заборони індексувати окремі сторінки ресурсу такі можуть виникнути. Мовляв, навіщо це потрібне в принципі? Мірок щодо цього у досвідченого веб-майстра може бути багато, але головне з них - необхідність позбутися пошуку від дублікатів сторінок. За допомогою команди «Disallow:» та групи спеціальних символів, Розглянуті вище, боротися з «небажаними» сторінками можна досить просто.

Команда «Allow:» – дозвіл індексації у robots.txt

Антиподом попередньої директиви можна вважати команду Allow: ». За допомогою тих самих уточнюючих елементів, але використовуючи цю команду у файлі robots.txt можна дозволити роботу, що індексує роботу, вносити потрібні вам елементи сайту в пошукову базу. На підтвердження – черговий приклад:

User-agent: Yandex Allow: /wp-admin

З якоїсь причини веб-майстр передумав і вніс відповідні коригування в robots.txt. Як наслідок, відтепер вміст папки wp-admin офіційно дозволено до індексації Яндекс.

Незважаючи на те, що команда Allow: існує, на практиці вона використовується не так вже й часто. За великим рахунком, у ній немає потреби, оскільки вона застосовується автоматично. Власнику сайту достатньо скористатися директивою «Disallow:», заборонивши до індексації той чи інший вміст. Після цього весь решта контенту ресурсу, який не заборонений у файлі robots.txt, сприймається пошуковим роботом як такий, який індексувати можна і потрібно. Все як у юриспруденції: «Все, що не заборонено законом – дозволено».

Директиви «Host:» та «Sitemap:»

Завершують огляд важливих директив у robots.txt команди « Host: » та « Sitemap: ». Що стосується першої, то вона призначається виключно для Яндекса, вказуючи йому яке дзеркало сайту (з www або без) вважати основним. На прикладі сайт це може виглядати так:

User-agent: Yandex Host: сайт

User-agent: Yandex Host: www.сайт

Використання цієї команди також дозволяє уникати непотрібного дублювання вмісту сайту.

У свою чергу директива « Sitemap: » вказує правильний шлях, що індексує роботу, до так званої Карти сайту – файлів sitemap.xml і sitemap.xml.gz (У випадку з CMS WordPress). Гіпотетичний приклад може бути таким:

User-agent: * Sitemap: http://сайт/sitemap.xml Sitemap: http://сайт/sitemap.xml.gz

Прописування цієї команди у файлі robots.txt допоможе пошуковому роботу швидше проіндексувати Карту сайту. Це також прискорить процес потрапляння сторінок веб-ресурсу в пошукову видачу.

Файл robots.txt готовий - що далі?

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

  • скористатися текстовим редактором(Наприклад, Notepad) для складання потрібного вам robots.txt;
  • перевірити коректність створеного документа, наприклад, за допомогою цього сервісу Яндекса;
  • за допомогою FTP-клієнта закачати готовий файл до кореневої папки свого сайту (у ситуації з WordPress мова зазвичай йде про системній папці Public_html).

Так, мало не забули. Початківцю веб-майстру, поза всяким сумнівом, перш ніж експериментувати самому, захочеться спершу подивитися на готові приклади даного файлуу виконанні інших. Немає нічого простішого. Для цього в адресному рядку браузера достатньо ввести site.ru/robots.txt . Замість «site.ru» – назва цікавого для вас ресурсу. Тільки й усього.

Вдалих експериментів і дякую, що читали!

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

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

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

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

Для регулювання доступу є різні директиви:

  • User-agent - агент користувача, для якого вказані правила доступу,
  • Disallow — забороняє доступ до URL,
  • Allow - дозволяє доступ до URL,
  • Sitemap - вказує шлях до ,
  • Crawl-delay - задає інтервал сканування URL (тільки для Яндекса),
  • Clean-param - ігнорує динамічні параметри URL (тільки для Яндекса),
  • Host - Вказує головне дзеркало сайту (тільки для Яндекса).

Зверніть увагу, з 20 березня 2018 Яндекс офіційно припинив підтримку директиви Host. Її можна видалити з robots.txt, а якщо залишити, то робот її просто ігнорує.

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

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

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

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

Для заборони індексування сторінок можливе застосування інших засобів:

  • редирект або каталог за допомогою файла.htaccess,
  • мета-тег noindex (не плутати з тегом для заборони індексації частини тексту),
  • атрибут для посилань та видалення посилань на зайві сторінки.

При цьому Google може успішно додати пошукову видачу сторінки, заборонені до індексації, незважаючи на всі обмеження. Його основний аргумент — якщо на сторінку посилаються, то вона може з'явитися в результатах пошуку. В даному випадку рекомендується не посилатися на такі сторінки, але дозвольте файл robots.txt якраз і призначений для того, щоб викинути з видачі такі сторінки… На мій погляд, логіка відсутня 🙄

Видалення сторінок з пошуку

Якщо заборонені сторінки все ж таки були проіндексовані, то необхідно скористатися Google Search Console та інструментом видалення URL-адрес, що входять до її складу:

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

Перевірка robots.txt

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

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

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

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

Про правильне складання файлу читайте за посиланням. До зустрічі!

Послідовно заповнюйте всі потрібні поля. У міру ваших вказівок, Ви будете бачити заповнення Robots.txt директивами. Нижче описані всі директиви файлу Robots.txt.

Позначте, скопіюйтета вставте текст у текстовий редактор. Збережіть файл як "robots.txt" у кореневій директорії Вашого сайту.

Опис формату файлу robots.txt

Файл robots.txt складається з записів, кожен з яких складається з двох полів: рядки з назвою клієнтської програми (user-agent), і одного або декількох рядків, що починаються з директиви Disallow:

Директива ":" значення

Robots.txt повинен створюватись у текстовому форматі Unix. Більшість хороших текстових редакторів уже вміють перетворювати символи перекладу. рядки Windowsу Unix. Або ваш FTP-клієнт має вміти це робити. Для редагування не намагайтеся користуватися HTML-редактором, особливо таким, що не має текстового режимувідображення коду.

Директива User-agent:

Для Рамблера: User-agent: StackRambler Для Яндекса: User-agent: Yandex Для Гугла: User-Agent: googlebot

Ви можете створити інструкцію для всіх роботів:

User-agent: *

Директива Disallow:

Друга частина запису складається з рядків Disallow. Ці рядки - директиви (вказівки, команди) даного робота. У кожній групі, що вводиться рядком User-agent, має бути хоча б одна інструкція Disallow. Кількість інструкцій Disallow не обмежена. Вони повідомляють роботу які файли та/або каталоги роботу не дозволено індексувати. Можна заборонити індексацію файлу або каталогу.

Наступна директива забороняє індексацію каталогу /cgi-bin/:

Disallow: /cgi-bin/ Зверніть увагу на / наприкінці назви директорії! Щоб забороняти відвідування саме каталогу "/dir", інструкція повинна мати вигляд: "Disallow: /dir/". А рядок "Disallow: /dir" забороняє відвідування всіх сторінок сервера, повне ім'я яких (від кореня сервера) починається з "/dir". Наприклад: "/dir.html", "/dir/index.html", "/directory.html".

Записана таким чином директива забороняє індексацію файлу index.htm, що знаходиться в корені:

Disallow: /index.htm

Директиву Allowрозуміє лише Яндекс.

User-agent: Yandex Allow: /cgi-bin Disallow: / # забороняє скачувати все, крім сторінок, що починаються з "/cgi-bin" Для інших пошукових систем вам доведеться перераховувати всі закриті документи. Продумайте структуру сайту, щоб документи, що були закриті для індексування, були зібрані по можливості в одному місці.

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

Робот Рамблера розуміє * як будь-який символ, тому інструкція Disallow: означає заборону індексації всього сайту.

Директиви Allow, Disallow без параметрів. Відсутність параметрів у директив Allow , Disallow трактується так: User-agent: Yandex Disallow: # теж що і Allow: / User-agent: Yandex Allow: # теж що і Disallow: /

Використання спецсимволів "*" та "$".
При вказівці шляхів директив Allow-Disallow можна використовувати спецсимволи "*" та "$", задаючи таким чином певні регулярні вирази. Спецсимвол "*" означає будь-яку (у тому числі порожню) послідовність символів. Приклади:

User-agent: Yandex Disallow: /cgi-bin/*.aspx # забороняє "/cgi-bin/example.aspx" та "/cgi-bin/private/test.aspx" Disallow: /*private # забороняє не тільки " /private", а й "/cgi-bin/private" Спецсимвол "$".
За промовчанням до кінця кожного правила, описаного в robots.txt, приписується "*", наприклад: User-agent: Yandex Disallow: /cgi-bin* # блокує доступ до сторінок, що починаються з "/cgi-bin" Disallow: /cgi- bin # те ж саме, щоб скасувати "*" на кінці правила, можна використовувати спецсимвол "$", наприклад: User-agent: Yandex Disallow: /example$ # забороняє "/example", але не забороняє "/example.html" User -agent: Yandex Disallow: /example # забороняє і "/example", і "/example.html" User-agent: Yandex Disallow: /example$ # забороняє тільки "/example" Disallow: /example*$ # так само, як "Disallow: /example" забороняє і /example.html та /example

Директива Host.

Якщо ваш сайт має дзеркала, спеціальний робот дзеркальник визначить їх та сформує групу дзеркал вашого сайту. У пошуку братиме участь лише головне дзеркало. Ви можете вказати його за допомогою robots.txt, використовуючи директиву "Host", визначивши як її параметр ім'я головного дзеркала. Директива "Host" не гарантує вибір зазначеного головного дзеркала, проте алгоритм при прийнятті рішення враховує її з високим пріоритетом. Приклад: Якщо www.glavnoye-zerkalo.ru головне дзеркало сайту, то robots.txt для #www.neglavnoye-zerkalo.ru виглядає так User-Agent: * Disallow: /forum Disallow: /cgi-bin Host: www.glavnoye -zerkalo.ru З метою сумісності з роботами, які не повністю дотримуються стандарту при обробці robots.txt, директиву "Host" необхідно додавати в групі, що починається із запису "User-Agent", безпосередньо після директив "Disallow"("Allow") . Аргументом директиви "Host" є доменне ім'я з номером порту (80 за замовчуванням), відокремленим двокрапкою. Параметр директиви Host повинен складатися з одного коректного імені хоста (тобто відповідного RFC 952 і IP-адресою, що не є) і допустимого номера порту. Неправильно складені рядки "Host:" ігноруються.

Приклади ігнорованих директив Host:

Host: www.myhost-.ru Host: www.-myhost.ru Host: www.myhost.ru: 100000 Host: www.my_host.ru Host: .my-host.ru: 8000 Host: my-host.ru. Host: my..host.ru Host: www.myhost.ru/ Host: www.myhost.ru:8080/ Host: 213.180.194.129 Host: www.firsthost.ru, www.secondhost.ru # в одному рядку - один домен! Host: www.firsthost.ru www.secondhost.ru # в одному рядку - один домен!! Host: екіпаж-зв'язок.рф # потрібно використовувати punycode

Директива Crawl-delay

Задає тайм-аут у секундах, з яким пошуковий робот закачує сторінки з вашого сервера (Crawl-delay).

Якщо сервер навантажений і не встигає відпрацьовувати запити на завантаження, скористайтеся директивою "Crawl-delay". Вона дозволяє задати пошуковому роботу мінімальний період часу (у секундах) між кінцем завантаження однієї сторінки та початком завантаження наступної. З метою сумісності з роботами, які не повністю дотримуються стандарту при обробці robots.txt, директиву Crawl-delay необхідно додавати в групі, що починається з запису User-Agent, безпосередньо після директив Disallow (Allow).

Пошуковий робот Яндекса підтримує дробові значення Crawl-Delay, наприклад, 0.5. Це не гарантує, що пошуковий робот заходитиме на ваш сайт кожні півсекунди, але дає роботу більше свободи та дозволяє прискорити обхід сайту.

User-agent: Yandex Crawl-delay: 2 # задає тайм в 2 секунди User-agent: * Disallow: /search Crawl-delay: 4.5 # задає тайм в 4.5 секунд

Директива Clean-param

Директива виключає параметри з адресного рядка. тобто. запити, що містять такий параметр і не містять, будуть вважатися ідентичними.

Порожні рядки та коментарі

Порожні рядки допускаються між групами інструкцій User-agent .

Інструкція Disallow враховується, тільки якщо вона підпорядкована будь-якому рядку User-agent - тобто якщо вище за неї є рядок User-agent .

Будь-який текст від знака решітки "#" до кінця рядка вважається коментарем та ігнорується.

Приклад:

Наступний простий файл robots.txtзабороняє індексацію всіх сторінок сайту всім роботам, крім робота Рамблера, якому, навпаки, дозволено індексацію всіх сторінок сайту.

# Інструкції для всіх роботів User-agent: * Disallow: / # Інструкції для робота Рамблера User-agent: StackRambler Disallow:

Поширені помилки:

Перегорнутий синтаксис: User-agent: / Disallow: StackRambler А має бути так: User-agent: StackRambler Disallow: / Декілька директив Disallow в одному рядку: Disallow: /css/ /cgi-bin/ /images/ Правильно так: Disallow: / css/ Disallow: /cgi-bin/ Disallow: /images/
    Примітки:
  1. Неприпустима наявність порожніх перекладів рядка між директивами "User-agent" та "Disallow" ("Allow"), а також між самими "Disallow" ("Allow") директивами.
  2. Відповідно до стандарту перед кожною директивою "User-agent" рекомендується вставляти порожній переклад рядка.