Недавно прилетела задача разобрать очень большой и крайне запутанный Robots.txt. Проблема в том, что в него на протяжении 3 лет только добавляли новые директивы, но не убирали старые. Сейчас я поделюсь с вами алгоритмом действий, которые надо сделать, чтобы разобрать файл.
Содержание статьи
Шаг 1: Определение основных блоков
Прежде всего, нужно разделить файл на блоки. Обычно каждый блок начинается с директивы “User-agent”. Вот пример такого блока:
User-agent: * Disallow: /private/ Allow: /public/
Подсчитаем количество блоков и составим таблицу блоков:
№ блока | User-agent | Количество директив |
---|---|---|
1 | * | 3 |
2 | Googlebot | 5 |
… | … | … |
Шаг 2: Удаление дубликатов
После определения блоков, нам нужно проверить наличие дубликатов директив в каждом блоке. Если такие есть, оставим только последнее вхождение дублирующейся директивы.
Шаг 3: Обработка конфликтующих директив
Иногда в одном блоке могут быть директивы, которые противоречат друг другу. В таких случаях, следует разрешить конфликты, исходя из приоритетов:
- Allow
- Disallow
Например, если в одном блоке есть следующие директивы:
Disallow: /folder/ Allow: /folder/file.html
То приоритет будет отдан директиве “Allow”, и поисковые роботы смогут индексировать “file.html”.
Шаг 4: Проверка директив на актуальность
После обработки блоков, нужно убедиться, что все указанные в директивах страницы и разделы актуальны. Проверка заключается в следующем:
- Если страница отдаёт 404, 403 или 301 ответ, удаляем её из файла.
- Если закрыт работающий раздел, разбираемся с каждым отдельно: выясняем причину закрытия, с какой целью это было сделано и т. д. По результату решаем для каждой.
Шаг 5: Сверка блоков с правилами
После обработки каждого блока и проверки директив на актуальность, необходимо сверить блоки с правилами, которые должны быть указаны в файле robots.txt. Ниже приведен список основных правил:
- Каждый блок должен начинаться с директивы “User-agent”.
- В файле могут быть несколько блоков с разными “User-agent”.
- Директивы “Disallow” и “Allow” должны быть указаны в отдельной строке.
- Пути в директивах указываются от корня сайта (начинаются с “/”).
Если все правила соблюдены, то файл считается корректным.
Шаг 6: Формирование нового файла
После выполнения всех шагов, можно приступить к формированию нового файла robots.txt. Важно сохранить все обработанные блоки в правильном порядке, начиная с директивы “User-agent”. Затем, сохраните директивы “Disallow” и “Allow” согласно их приоритету и актуальности.
Не забудьте проверить новый файл robots.txt на корректность и отсутствие ошибок, прежде чем заменить старый файл на сервере. Использование актуального и правильно составленного файла robots.txt поможет улучшить индексацию вашего сайта поисковыми системами и избежать возможных проблем с доступом к разделам и страницам сайта.
Шаг 7: Аналитика
После внедрения нового файла robots.txt, следите за результатами и анализируйте изменения в индексации сайта. Если вы всё сделали правильно, количество индексированных страниц не должно сильно измениться, за исключением случаев, когда вы открыли разделы, которые не должны были быть закрыты.
Однако, если вы не вносили новых директив “Disallow”, а количество индексированных страниц начало снижаться, необходимо восстановить прежний robots.txt и изучить, где вы могли допустить ошибку. Возможно, вы случайно закрыли какие-то важные разделы или страницы от индексации.
Во время аналитики мониторьте показатели вашего сайта, такие как позиции в поисковой выдаче, количество посещений и т. д. Это поможет вам понять, как изменения в robots.txt влияют на работу вашего сайта и позволит своевременно отреагировать на возможные проблемы.
Топ ошибок robots.txt
- Неправильный синтаксис: Ошибки в синтаксисе могут привести к неправильному распознаванию директив и блокировке доступа к важным страницам. Убедитесь, что все директивы написаны верно и соответствуют стандартам.
- Дублирование директив: Наличие повторяющихся директив может вызвать путаницу и неправильную интерпретацию правил. Удалите дубли и оставьте только одну версию каждой директивы.
- Противоречащие друг другу директивы: Если в файле присутствуют конфликтующие директивы “Disallow” и “Allow” для одного и того же раздела или страницы, это может вызвать непредсказуемое поведение поисковых роботов.
- Закрытие важных разделов или страниц: Не закрывайте от индексации ключевые разделы или страницы сайта, такие как главная страница, категории или информационные материалы. Это может негативно сказаться на позициях сайта в поисковой выдаче.
- Неполное указание пути: Убедитесь, что указанные в директивах пути начинаются с символа “/” (корневой каталог сайта) и правильно отражают структуру вашего сайта.
- Отсутствие директивы “User-agent”: Каждый блок правил должен начинаться с директивы “User-agent”. Отсутствие этой директивы может привести к неправильному определению правил для разных поисковых роботов.
- Слишком много директив: Файл robots.txt должен быть лаконичным и содержать только необходимые директивы. Избегайте перегружения файла излишними правилами, так как это может затруднить его анализ и привести к ошибкам.
- Ошибка при размещении файла: Файл robots.txt должен быть размещен в корневом каталоге сайта и иметь правильное имя. Убедитесь, что файл доступен по адресу “http://yourdomain.com/robots.txt“.
- Неактуальные директивы: Проверьте, что все указанные в файле разделы и страницы актуальны. Удалите устаревшие директивы, чтобы избежать неправильной индексации и лишней путаницы.
Мифы про robots.txt
- Robots.txt в 100% случаев исполняется поисковиками: Хотя большинство поисковых систем уважают и следуют правилам, указанным в файле robots.txt, иногда страницы, запрещенные для индексации, всё же попадают в индекс. Это может произойти из-за ошибок в самом файле или временных сбоев в работе поисковых роботов.
- Обязательно надо задавать отдельные User-agent для Яндекса и для Google: Если все директивы для разных поисковых систем одинаковые, то вместо того, чтобы указывать каждый User-agent отдельно, можно использовать
User-agent: *
. Это означает, что правила применяются ко всем поисковым роботам. - Robots.txt может полностью защитить контент от копирования: Файл robots.txt служит лишь указанием для поисковых роботов и других автоматических агентов, какие разделы сайта могут быть проиндексированы или просканированы. Однако это не является гарантией полной защиты контента, так как недобросовестные пользователи и боты могут проигнорировать правила robots.txt.
- Robots.txt может улучшить SEO вашего сайта: Файл robots.txt сам по себе не влияет на SEO вашего сайта. Однако правильное использование robots.txt может помочь оптимизировать индексацию, исключая страницы с дублирующим контентом или низким качеством, что косвенно может улучшить SEO.
- Наличие robots.txt обязательно: Хотя наличие файла robots.txt является хорошей практикой, отсутствие этого файла не вызовет непосредственного негативного влияния на ваш сайт. Если файла нет, поисковые роботы будут считать, что все страницы на сайте разрешены для индексации.
- Необходимо периодически отправлять обновленный robots.txt поисковым системам: Поисковые роботы автоматически проверяют файл robots.txt при обходе вашего сайта, поэтому нет необходимости отправлять обновленный файл вручную. Однако имеет смысл проверять файл на ошибки и актуальность директив периодически.