---
title: "Настройка файла robots.txt — База знаний Timeweb Cloud"
description: "Настройка файла robots.txt. Документация и инструкции по управлению IT-инфраструктурой. Timeweb Cloud — облачные решения для вашего бизнеса."
---

# Настройка файла robots.txt

> Полный индекс документации для ИИ-агентов: [llms.txt](https://timeweb.cloud/llms.txt).

`robots.txt` — это служебный файл с инструкциями для поисковых роботов, размещаемый в корневой директории сайта (`/public_html/robots.txt`). С его помощью можно запретить индексирование отдельных страниц (или всего сайта), ограничить доступ для определенных роботов, настроить частоту запросов роботов к сайту и др. Корректная настройка `robots.txt` позволит снизить нагрузку на сайт, создаваемую поисковыми роботами.

## Формат robots.txt

-   Файл содержит набор правил (директив), каждое из которых записывается с новой строки в формате `имя_директивы: значение` (пробел после двоеточия необязателен, но допустим).
-   Каждый блок правил начинается с директивы `User-agent`.
-   Внутри блока правил не должно быть пустых строк.
-   Новый блок правил отделяется от предыдущего пустой строкой.
-   В файле можно использовать примечания, отделяя их знаком `#`.
-   Файл должен называться именно `robots.txt`; написание Robots.txt или ROBOTS.TXT будет ошибочным. 

Некоторые роботы могут игнорировать отдельные директивы. Например, GoogleBot не учитывает директивы `Host` и `Crawl-Delay`; YandexDirect игнорирует общие директивы (заданные как `User-agent: *`), но учитывает правила, заданные специально для него.

Проверить созданный `robots.txt` можно в вебмастер-сервисах [Yandex](https://webmaster.yandex.ru/tools/robotstxt/) или [Google](https://search.google.com/search-console/welcome) или в других подобных сервисах в сети.

## Используемые директивы

### User-agent

Все блоки правил начинаются с директивы `User-agent`, в которой указывается название робота, для которого задается правило. Запись вида `User-agent: *` означает, что правило задается для всех поисковых роботов.

Например, при следующей записи правило будет применено только к основному индексирующему боту Яндекса:

```shell
User-agent: YandexBot
```

Правило будет применено ко всем роботам Яндекса и Google:

```shell
User-agent: Yandex
User-agent: Googlebot
```

Правило будет применено вообще ко всем роботам:

```shell
User-agent: *
```

### Disallow и Allow

Директивы используются, чтобы запретить и разрешить доступ к определенным разделам сайта.

Например, можно запретить индексацию всего сайта (`Disallow: /`), кроме определенного каталога (`Allow: /catalog`):

```shell
User-agent: имя_бота
Disallow: /
Allow: /catalog
```

Запретить индексацию страниц, начинающихся с `/catalog`, но разрешить для страниц, начинающихся с `/catalog/auto` и `/catalog/new`:

```shell
User-agent: имя_бота
Disallow: /catalog
Allow: /catalog/auto
Allow: /catalog/new
```

В каждой строке указывается только одна директория. Для запрещения (или разрешения) доступа к нескольким каталогам, для каждого требуется отдельная запись.

С помощью `Disallow` можно ограничить доступ к сайту для нежелательных ботов, тем самым снизив создаваемую ими нагрузку. Например, чтобы запретить доступ ко всему сайту для MJ12bot и AhrefsBot — ботов сервиса majestic.com и ahrefs.com — используйте:

```shell
User-agent: MJ12bot
User-agent: AhrefsBot
Disallow: /
```

Аналогичным образом устанавливается блокировка и для других ботов (скажем, DotBot, SemrushBot и других).

Примечания:

-   Пустая директива `Disallow:` равнозначна `Allow: /`, то есть «не запрещать ничего».
-   В директивах может использоваться символ `$` для обозначения точного соответствия указанному параметру. Например, запись `Disallow: /catalog` аналогична `Disallow: /catalog *` и запретит доступ ко всем страницам с `/catalog` (/catalog, /catalog1, /catalog-new, /catalog/clothes и др.).  
    Использование `$` это изменит. `Disallow: /catalog$` запретит доступ к `/catalog`, но разрешит /catalog1, /catalog-new, /catalog/clothes и др.

### Sitemap

При использовании файла `sitemap.xml` для описания структуры сайта, можно указать путь к нему с помощью соответствующей директивы:

```shell
User-agent: *
Disallow:
Sitemap: https://mydomain.com/путь_к_файлу/mysitemap.xml
```

Можно перечислить несколько файлов `Sitemap`, каждый в отдельной строке.

### Host

Директива используется для указания роботам Яндекса основного зеркала сайта и полезна, когда сайт доступен по нескольким доменам.

```shell
User-agent: Yandex
Disallow: /catalog1$
Host: https://mydomain.com
```

Примечания:

-   Директива `Host` может быть только одна; если в файле указано несколько, роботом будет учтена только первая.
-   Необходимо указывать протокол HTTPS, если он используется. Если вы используете HTTP, зеркало можно записать в виде mydomain.com
-   Для корректного прочтения директивы, ее нужно указывать в блоке правил `User-agent` после директив `Disallow` и `Allow`.

### Crawl-delay

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

Значения можно указывать целыми или дробными числами (разделитель — точка).

```shell
User-agent: Yandex
Disallow:
Crawl-delay: 0.5
```

Примечания:

-   Для корректного прочтения директивы, ее нужно указывать в блоке правил `User-agent` после директив `Disallow` и `Allow`.
-   Для Яндекса максимальное значение в `Crawl-delay` — 2. Более высокое значение можно установить инструментами [Яндекс.Вебмастер](https://yandex.ru/support/webmaster/service/crawl-rate.html#crawl-rate).
-   Для Google-бота установить частоту обращений можено в панели вебмастера [Search Console](https://search.google.com/search-console/welcome).

### Clean-param

Директива используется для робота Яндекса. Она позволяет исключить из индексации страницы с динамическими параметрами в URL-адресах (это могут быть идентификаторы сессий, пользователей, рефереров), чтобы робот не индексировал одно и то же содержимое повторно, повышая тем самым нагрузку на сервер.

Например, на сайте есть страницы:

```shell
www.mydomain.ru/news.html?&parm1=1&parm2=2
www.mydomain.ru/news.html?&parm2=2&parm3=3
```

По факту по обоим адресам отдается одна и та же страница — `www.mydomain.ru/news.html`, при этом в URL присутствуют дополнительные динамические параметры.

Чтобы робот не индексировал каждую подобную страницу, можно использовать директиву:

```shell
User-agent: Yandex
Disallow:
Clean-param: parm1&parm2&parm3 /news.html
```

Через знак `&` указываются параметры, которые робот должен игнорировать. Далее указывается страница, для которой применяется данное правило

С более подробной информацией о настройке директивы `Clean-param` рекомендуем ознакомиться в [справочнике Яндекса](https://yandex.ru/support/webmaster/controlling-robot/robots-txt.html#clean-param).
