1. Главная
  2. База Знаний
  3. Настройка robots.txt

Настройка robots.txt


В данной статье мы рассмотрим ключевую роль файла robots.txt в управлении трафиком на веб-сайтах, обсудим необходимость его наличия, а также предоставим рекомендации по настройке для эффективного управления индексацией страниц. Помимо этого, разберем примеры правильного использования директив в файле robots.txt и предоставим инструкцию по проверке корректности его настроек.

Зачем нужен robots.txt

Robots.txt – это файл, который находится на сервере сайта в его основной директории. Он сообщает поисковым роботам, как они должны просматривать содержимое ресурса. Правильное использование этого файла помогает предотвратить индексацию нежелательных страниц, защищает конфиденциальные данные, а также может повысить эффективность SEO-оптимизации и видимость сайта в поисковых результатах. Конфигурация robots.txt осуществляется через директивы, которые мы рассмотрим далее.

Настройка директив в robots.txt

User-Agent

Основная директива известна, как User-Agent, где мы устанавливаем специальное ключевое слово для роботов. При обнаружении этого слова, робот понимает, что данное правило предназначено именно для него.

Рассмотрим пример использования User-Agent в файле robots.txt:

User-Agent: *
Disallow: /private/

Этот пример указывает, что все поисковые роботы (представленные символом "*") должны игнорировать страницы, находящиеся в директории /private/.

Вот так выглядит инструкция для конкретных поисковых роботов:

User-Agent: Googlebot
Disallow: /admin/

User-Agent: Bingbot
Disallow: /private/

В данном случае, поисковый робот Googlebot должен игнорировать страницы в директории /admin/, а Bingbot - страницы в директории /private/.

Disallow

Disallow указывает поисковым роботам, какие URL-адреса следует пропустить или не индексировать на веб-сайте. Эта директива полезна, когда вы хотите скрыть чувствительные данные или страницы с низким качеством контента от индексации поисковыми системами. Если в файле robots.txt указана запись Disallow: /directory/, то роботам будет запрещен доступ к содержимому указанной директории. Например,

User-agent: *
Disallow: /admin/

Это значение указывает, что все роботы должны игнорировать URL-адреса, начинающиеся с /admin/. Для закрытия всего сайта от индексации любыми роботами, устанавливаем, в качестве правила, корневую директорию:

User-agent: *
Disallow: /

Allow

Значение "Allow" действует противоположно "Disallow": оно разрешает поисковым роботам доступ к определенной странице или директории, даже, если другие директивы в файле robots.txt запрещают доступ к ней.

Рассмотрим пример:

User-agent: *
Disallow: /admin/
Allow: /admin/login.html

В данном примере указано, что роботам не разрешен доступ к директории /admin/, за исключением страницы /admin/login.html, которая доступна для индексации и сканирования.

Robots.txt и карта сайта (sitemap)

Sitemap представляет собой XML-файл, который содержит список URL-адресов всех страниц и файлов на сайте, которые могут быть проиндексированы поисковыми системами. Когда поисковый робот обращается к файлу robots.txt и видит ссылку на sitemap XML-файл, он может использовать этот файл для поиска всех доступных URL-адресов и ресурсов на сайте. Директива указывается в формате:

Sitemap: https://yoursite.com/filesitemap.xml

Данное правило обычно располагается в конце документа без привязки к конкретному User-Agent и обрабатывается всеми роботами без исключения. Если владелец ресурса не использует sitemap.xml, добавлять правило не нужно.

Примеры настроенного robots.txt

Настройка robots.txt для WordPress

В этом разделе рассмотрим готовую конфигурацию для WordPress. Мы изучим запрет доступа к конфиденциальным данным, а также разрешение доступа к основным страницам.

В качестве готового решения можно использовать следующий код:

User-agent: *
# Запретить доступ к файлам, содержащим конфиденциальные данные
Disallow: /cgi-bin
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/themes/
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /xmlrpc.php


# Разрешить доступ к основным страницам сайта
Allow: /wp-content/uploads/
Allow: /sitemap.xml
Allow: /feed/
Allow: /trackback/
Allow: /comments/feed/
Allow: /category/*/*
Allow: /tag/*

# Запретить индексацию старых версий записей и параметризированных запросов, иначе возможно дублирование контента или неоптимальная индексация.
Disallow: /*?*
Disallow: /?s=*
Disallow: /?p=*
Disallow: /?page_id=*
Disallow: /?cat=*
Disallow: /?tag=*

# Подключить карту сайта (расположение необходимо заменить на свое)
Sitemap: http://yourdomain.com/sitemap.xml

Несмотря на то, что все директивы сопровождаются комментариями, остановимся подробнее на выводах.

  1. Роботы не будут индексировать чувствительные файлы и каталоги.
  2. При этом, роботам разрешен доступ к основным страницам и ресурсам сайта.
  3. Установлен запрет на индексацию старых версий записей и параметризированных запросов для предотвращения дублирования контента.
  4. Указано местоположение карты сайта для улучшения индексации.

Таким образом, мы рассмотрели общий пример готовой конфигурации, в котором скрыты от индексации некоторые чувствительные файлы и пути, но при этом доступны основные директории.

В отличии от многих популярных CMS или самописных сайтов, в WordPress существует несколько плагинов, которые облегчают создание и управление файлом robots.txt. Наиболее популярное решение для этой цели - Yoast SEO.

Для его установки необходимо:

  1. Перейти в админ-панель WordPress.
  2. В разделе "Плагины" выбрать "Добавить новый".
  3. Найти плагин "Yoast SEO" и установить его.
  4. Активировать плагин.

Для редактирования файла robots.txt требуется:

  1. Перейти в раздел "SEO" в боковом меню админ-панели и выбрать "Общие".
  2. Перейти на вкладку "Инструменты".
  3. Нажать на "Файлы". Здесь вы увидите различные файлы, включая robots.txt.
  4. Ввести необходимые правила для индексации в соответствии с вашими требованиями.
  5. После внесения правок в файл нажать кнопку "Сохранить изменения в robots.txt".

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

Самостоятельная настройка robots.txt

Аналогично можно настроить свою конфигурацию файла даже при условии отсутствия готовой CMS для сайта. Пользователю требуется также загрузить файл robots.txt в корневую директорию сайта и указать необходимые правила. Приведем один из примеров, в котором указаны все доступные директивы:

User-agent: *
Disallow: /admin/             # Запретить доступ к административной панели
Disallow: /secret.html	      # Запретить доступ к конкретному файлу
Disallow: /*.pdf$	      # Запретить индексацию определенных типов файлов
Disallow: /*?sort=	      # Запретить индексацию определенных URL-параметров
Allow: /public/		      # Разрешить доступ к публичным страницам
Sitemap: http://yourdomain.com/sitemap.xml # Подключить карту сайта

Как проверить файл robots.txt

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

Рассмотрим на примере сервиса Яндекс Вебмастер. Для проверки требуется вставить ссылку на свой сайт в соответствующее поле, если файл уже загружен на сервер. После чего, инструмент сам подгрузит конфигурацию файла. Также есть возможность ввести конфигурацию вручную:

Конфигурация robots.txt

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

Результат настройки robots.txt

В указанном примере нет ошибок. При их наличии, сервис покажет проблемные места и способы их исправления.

Заключение

Подводя итог, мы подчеркнули, на сколько важен файл robots.txt для контроля трафика на сайте. Мы дали советы, как его правильно настроить, чтобы управлять тем, как поисковые системы индексируют страницы. Помимо этого, также рассмотрели примеры того, как правильно использовать этот файл, и дали инструкцию, как проверить, что все настройки работают корректно.

Предыдущая статья Настройка веб-сервера (Apache-PHP-MySQL/MariaDB) на Linux
Следующая статья Как подключиться по SSH к серверу под управлением Linux

Задайте вопрос

Мы всегда готовы ответить на Ваши вопросы в любое время суток.
Пожалуйста, проверьте нашу Базу Знаний, скорее всего ответ на ваш вопрос там уже есть!