Полное руководство по файлу robots.txt в WordPress

Всем привет!

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

Полное руководство по файлу robots.txt в WordPress

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

Есть еще много чего, так что давайте начнем!

Что такое WordPress robots.txt?

Прежде чем мы сможем поговорить о файле robots.txt в WordPress, важно определить, что такое “robot” в этом случае. Роботы – это любой тип “бота”, который посещает веб-сайты в интернете. Наиболее распространенный пример – поисковые роботы. Эти боты “ползают” по сети, чтобы помочь таким поисковым системам, как Яндекс и Google, и ранжировать миллиарды страниц в интернете.

Итак, боты, в общем, полезны для интернета … или, по крайней мере, необходимы. Но это не обязательно означает, что вы или другие веб-мастера хотите, чтобы боты бегали без ограничений. Желание контролировать взаимодействие веб-роботов с веб-сайтами привело к созданию стандарта исключения роботов в середине 1990-х годов. Robots.txt является практической реализацией этого стандарта – он позволяет вам контролировать, как участвующие боты взаимодействуют с вашим сайтом. Вы можете полностью блокировать ботов, ограничить их доступ к определенным областям вашего сайта и многое другое.

Эта “участвующая” часть важна. Robots.txt не может заставить бота следовать его директивам. А вредоносные боты могут и будут игнорировать файл robots.txt. Кроме того, даже авторитетные организации игнорируют некоторые команды, которые вы можете поместить в robots.txt. Например, Google будет игнорировать любые правила, которые вы добавляете в свой robots.txt, относительно того, как часто его сканеры посещают. Если у вас много проблем с ботами, вам может пригодиться решение для безопасности, такое как Cloudflare или Sucuri.

Почему вы должны заботиться о своем файле robots.txt?

Для большинства веб-мастеров преимущества хорошо структурированного файла robots.txt сводятся к двум категориям:

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

Robots.txt не касается конкретно того, какие страницы индексируются в поисковых системах

Robots.txt не является надежным способом контроля того, какие страницы индексируют поисковые системы. Если ваша основная цель состоит в том, чтобы не допустить включения определенных страниц в результаты поиска, правильный подход – использовать метатег “noindex” или другой аналогичный прямой метод.

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

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

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

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

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

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

По умолчанию WordPress автоматически создает виртуальный файл robots.txt для вашего сайта. Таким образом, даже если вы не поднимите палец для этого, на вашем сайте уже должен быть файл robots.txt по умолчанию. Вы можете проверить, так ли это, добавив “/robots.txt” в конец вашего доменного имени. Например, “https://zacompom.ru/robots.txt” вызывает файл robots.txt, который я используем здесь:

Как создать и отредактировать файл robots

Пример файла robots.txt

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

Как создать и отредактировать файл robots.txt с помощью Yoast SEO

Если вы используете популярный плагин Yoast SEO, вы можете создать (и отредактировать) свой файл robots.txt прямо из интерфейса Yoast. Однако прежде чем вы сможете получить к нему доступ, вам нужно включить расширенные функции Yoast SEO, перейдя в раздел “SEO – Панель инструментов – Функции” и переключиться на “Страницах” – “Дополнительные настройки”:

Как создать и отредактировать файл

Как включить расширенные функции Yoast

После того, как это активировано, вы можете перейти к “SEO – Инструменты” и нажать на “Редактор файлов”:

Как получить доступ к редактору файлов Yoast

Как получить доступ к редактору файлов Yoast

Предполагая, что у вас еще нет физического файла robots.txt, Yoast предложит вам “создать файл robots.txt”:

Как создать robots.txt в Yoast

Как создать robots.txt в Yoast

И после того, как вы нажмете эту кнопку, вы сможете редактировать содержимое файла robots.txt непосредственно из того же интерфейса:

Как редактировать robots.txt в Yoast

Как редактировать robots.txt в Yoast

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

Как создать и отредактировать файл robots.txt в “All In One SEO”

Если вы используете плагин СЕО-пакета “All In One SEO” в формате Yoast, вы также можете создавать и редактировать файл robots.txt прямо из интерфейса плагина. Все, что вам нужно сделать, это зайти в “All In One SEO – Диспетчер по функциям” и активировать robots.txt функции:

Как создать robots.txt в All in One SEO Pack

Как создать robots.txt в All in One SEO Pack

Затем вы сможете управлять своим файлом robots.txt, перейдя в раздел “All in One SEO Pack – Robots.txt”:

Как редактировать robots.txt в All in One SEO Pack

Как редактировать robots.txt в All in One SEO Pack

Как создать и редактировать файл robots.txt через FTP

Если вы не используете плагин SEO, который предлагает функциональность robots.txt, вы все равно можете создавать и управлять своим файлом robots.txt через SFTP. Сначала используйте любой текстовый редактор, чтобы создать пустой файл с именем “robots.txt”:

Как создать свой собственный файл robots.txt

Как создать свой собственный файл robots.txt

Затем подключитесь к своему сайту через SFTP и загрузите этот файл в корневую папку вашего сайта. Вы можете внести дополнительные изменения в свой файл robots.txt, отредактировав его через SFTP или загрузив новую версию файла.

Что надо прописывать в ваш файл robots.txt

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

  • User-agent – позволяет вам ориентироваться на конкретных ботов. User-agent – это то, что боты используют для идентификации себя. С их помощью вы можете, например, создать правило, которое применяется к Яндекс, но не к Google.
  • Disallow – эта директива позволяет вам запретить роботам доступ к определенным областям вашего сайта.

Также есть команда Allow, которую вы будете использовать в нишевых ситуациях. По умолчанию все на вашем сайте помечено как Allow, поэтому нет необходимости использовать команду Allow в 99% случаев. Но это очень удобно, когда вы хотите запретить (Disallow) доступ к папке и ее дочерним папкам, но разрешить (Allow) доступ к одной определенной дочерней папке.

Вы добавляете правила, сначала указывая, к какому User-agent должно применяться правило, а затем перечисляя, какие правила применять, используя Disallow и Allow. Есть также некоторые другие команды, такие как Crawl-delay и Sitemap, но они либо:

  • Игнорируется большинством основных сканеров или интерпретируется совершенно по-разному (в случае задержки сканирования)
  • Сделано избыточным с помощью таких инструментов, как Google Search Console (для файлов сайтов)

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

Как использовать robots.txt, чтобы заблокировать доступ ко всему сайту

Допустим, вы хотите заблокировать доступ всем сканерам к вашему сайту. Это вряд ли произойдет на живом сайте, но это пригодится для разработки сайта. Для этого вы должны добавить этот код в ваш файл WordPress robots.txt:

    User-agent: *
    Disallow: /

Что происходит в этом коде?

Звездочка (*) рядом с User-agent означает “все User-agent”. Звездочка – это подстановочный знак, означающий, что он применяется к каждому агенту пользователя. Слэш (/) рядом с Disallow говорит, что вы хотите, чтобы запретить доступ ко всем страницам, которые содержат “yourdomain.com/” (каждую страницу на вашем сайте).

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

Давайте изменим это. В этом примере мы представим, что вам не нравится тот факт, что Bing сканирует ваши страницы. Вы – команда Google, и даже не хотите, чтобы Bing просматривал ваш сайт. Чтобы заблокировать только Bing от сканирования вашего сайта, вы должны заменить звездочку (*) с Bingbot:

    User-agent: Bingbot
    Disallow: /

По существу, приведенный выше код говорит только применить правило Disallow для бота с именем “Bingbot”. Теперь вы вряд ли захотите заблокировать доступ к Bing, но этот сценарий пригодится, если есть конкретный бот, которому вы не хотите разрешать заходить на свой сайт.

Как использовать robots.txt, чтобы заблокировать доступ к определенной папке или файлу

В этом примере предположим, что вы хотите заблокировать доступ только к определенному файлу или папке (и всем подпапкам этой папки). Чтобы применить это к WordPress, допустим, вы хотите заблокировать:

  • Вся папка wp-admin
  • wp-login.php

Вы можете использовать следующие команды:

    User-agent: *
    Disallow: /wp-admin/
    Disallow: /wp-login.php

Как использовать robots.txt, чтобы разрешить доступ к определенному файлу в запрещенной папке

Хорошо, теперь давайте скажем, что вы хотите заблокировать всю папку, но вы по-прежнему хотите разрешить доступ к определенному файлу внутри этой папки. Вот где команда Allow пригодится. И это на самом деле очень применимо к WordPress. Фактически, виртуальный файл WordPress robots.txt прекрасно иллюстрирует этот пример:

    User-agent: *
    Disallow: /wp-admin/
    Allow: /wp-admin/admin-ajax.php

Этот фрагмент кода блокирует доступ ко всей папки wp-admin, за исключением файла /wp-admin/admin-ajax.php.

Как использовать robots.txt, чтобы остановить роботов от сканирования результатов поиска WordPress

Один из специфических трюков WordPress, который вы можете захотеть сделать – запретить поисковым роботам сканировать страницу результатов поиска. По умолчанию WordPress использует параметр запроса “?S=”. Таким образом, чтобы заблокировать доступ, все, что вам нужно сделать, это добавить следующее правило:

    User-agent: *
    Disallow: /?s=
    Disallow: /search/

Это может быть эффективным способом остановки программных ошибок 404, если вы их получаете.

Как создать разные правила для разных ботов в robots.txt

До сих пор все примеры имели дело с одним правилом за раз. Но что, если вы хотите применить разные правила к разным ботам? Вам просто нужно добавить каждый набор правил в декларацию User-agent для каждого бота. Например, если вы хотите создать одно правило, которое применяется ко всем ботам, и другое правило, которое относится только к Bingbot, вы можете сделать это следующим образом:

    User-agent: *
    Disallow: /wp-admin/

    User-agent: Bingbot
    Disallow: /

В этом примере всем ботам будет заблокирован доступ к /wp-admin/, но Bingbot будет запрещен доступ ко всему сайту.

Тестирование вашего файла robots.txt

Вы можете проверить файл robots.txt в консоли поиска Google, чтобы убедиться, что он правильно настроен. Просто нажмите на свой сайт, и в разделе “Сканирование” нажмите “Тестировать robots.txt”. Затем вы можете отправить любой URL, включая свою домашнюю страницу. Вы должны увидеть зеленый Allowed, если все можно сканировать. Вы также можете проверить заблокированные URL-адреса, чтобы убедиться, что они действительно заблокированы и/или Disallowed.

Тест файла robots.txt

Тест файла robots.txt

Остерегайтесь спецификации UTF-8

Спецификация обозначает метку порядка байтов и в основном является невидимым символом, который иногда добавляется в файлы старыми текстовыми редакторами и т.п. Если это происходит с вашим файлом robots.txt, Google может не прочитать его правильно. Вот почему важно проверить ваш файл на наличие ошибок. Например, как показано ниже, наш файл имел невидимый символ, и Google жалуется, что синтаксис не понятен. Это фактически делает недействительной первую строку нашего файла robots.txt, что не очень хорошо! У Гленна Гейба есть отличная статья о том, как UTF-8 BOM может убить ваше СЕО.

UTF-8 BOM в вашем файле robots.txt

UTF-8 BOM в вашем файле robots.txt

Googlebot в основном в США

Также важно не блокировать робота Google из США, даже если вы ориентируетесь на местный регион за пределами США. Иногда они выполняют локальное сканирование, ну а робот Google в основном базируется в США.

Что помещают в свои файлы robots.txt популярные сайты на WordPress

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

TechCrunch

TechCrunch

В дополнение к ограничению доступа к ряду уникальных страниц TechCrunch особенно запрещает сканерам:

  • /wp-admin/
  • /wp-login.php

Они также устанавливают специальные ограничения для двух ботов:

  • Swiftbot
  • IRLbot

В случае, если вам интересно, IRLbot является краулером исследовательского проекта Texas A&M University. Это странно!

The Obama Foundation

The Obama Foundation

The Obama Foundation не сделал никаких специальных дополнений, решив исключительно ограничить доступ к папке /wp-admin/.

Angry Birds

Angry Birds

Angry Birds имеет ту же настройку по умолчанию, что и The Obama Foundation. Ничего особенного не добавляется.

Drift

Drift

Наконец, Drift решает определить свои sitemap сайта в файле robots.txt, но в противном случае оставляет те же ограничения по умолчанию, что и The Obama Foundation и Angry Birds.

Используйте файл robots.txt правильно

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

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

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

До скорых встреч!

Вам понравилась статья?
плохохорошо (Пока оценок нет)
Загрузка...
Обо мне
Юрич:
Занимаюсь созданием сайтов на WordPress более 6 лет. Работал в нескольких веб-студиях, да и сейчас работаю. Иногда подрабатываю на фрилансе, как на нашем так и на зарубежном. Везде зарекомендовал себя очень хорошо. Если нужен сайт на WordPress, шаблон для сайта или лендинг - не стесняйтесь - пишите. Рад буду помочь!
2 комментария к статье "Полное руководство по файлу robots.txt в WordPress"
  1. Юрич: 01.12.2019 в 10:36 -

    Доброе утро, Владимир!
    Вы хотите чтобы я вам сделал лендинг?

  2. Владимир: 01.12.2019 в 05:54 -

    Д.утро. Подписан на ваши статьи, спасибо, очень дохо-дчиво и полезно. Есть жела-ние сделать лендинг по на-шей технологической раз-работке. Имеется бук-лет.pdf, который можно взять за основу и перера-ботать на основе имеюще-гося у вас опыта. На каких условиях это можно сде-лать? С уважением, Владимир