Как устранить проблему “Проиндексировано, несмотря на блокировку в файле robots.txt” в GSC

Patrick Stox
Патрик Стокс — консультант по продукту, технический SEO-специалист и амбассадор бренда в Ahrefs. Он является организатором Raleigh SEO Meetup, конференции Raleigh SEO, Beer & SEO Meetup, конференции Findability и модератором /r/TechSEO.
    Предупреждение “Проиндексировано, несмотря на блокировку в файле robots.txt” отображается в Google Search Console (GSC), если Google проиндексировал URL-адрес, хотя его сканирование было заблокировано.

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

    Как видите, первым делом нужно спросить себя, хотите ли вы, чтобы Google индексировал URL-адрес.

    Если вы не хотите, чтобы URL-адрес индексировался…

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

    Если вы заблокируете сканирование страницы, Google все равно сможет проиндексировать ее, потому что сканирование и индексирование — это разные процессы. Если Google не может сканировать страницу, они не увидят атрибут noindex в метатеге и все равно смогут проиндексировать страницу, если на ней есть ссылки.

    Если URL-адрес каноникализируется на другую страницу, не добавляйте атрибут noindex в метатег robots. Просто убедитесь, что настроены правильные сигналы каноникализации, включая атрибут canonical на канонической странице, и разрешите сканирование, чтобы сигналы проходили и консолидировались правильно.

    Если вы хотите, чтобы URL-адрес индексировался…

    Вам нужно выяснить, почему Google не может просканировать URL-адрес и снять блокировку. 

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

    1. Проверьте наличие блокировки сканирования в robots.txt
    2. Проверьте наличие периодической блокировки
    3. Проверьте наличие блокировки по user-agent
    4. Проверьте наличие блокировки по IP-адресу

    Проверьте наличие блокировки сканирования в robots.txt

    Самый простой способ выявить эту проблему — использовать средство проверкиrobots.txt в GSC, которое покажет правило блокировки.

    Если вы знаете, что ищете, или у вас нет доступа к GSC, вы можете перейти по адресу домен.com/robots.txt, чтобы найти файл. Дополнительную информацию вы можете найти в нашей статье о robots.txt, но вы, вероятно, ищете директиву disallow, например:

    Disallow: /

    Директива может блокировать какой-то конкретный или все user-agent. Если ваш сайт новый или был запущен недавно, вы можете поискать:

    User-agent: *

    Disallow: /

    Не можете найти проблему?

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

    Как это исправить

    Вам нужно удалить директиву disallow, вызывающую блокировку. Способ исправления проблемы зависит от используемой вами технологии.

    WordPress

    Если проблема затрагивает весь ваш веб-сайт, наиболее вероятная причина в том, что вы включили параметр в WordPress, отвечающий за запрет индексации. Эта ошибка часто встречается на новых веб-сайтах и после проведения миграции. Выполните следующие действия, чтобы проверить это.

    1. Нажмите “Настройки” (Settings)
    2. Нажмите “Чтение” (Reading)
    3. Снимите флажок “Видимость в поисковых системах” (Search Engine Visibility).
    WordPress с Yoast

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

    1. Нажмите на Yoast SEO
    2. Нажмите “Инструменты” (Tools)
    3. Нажмите “Редактор файлов” (File editor)
    WordPress с Rank Math

    Как и Yoast, Rank Math позволяет напрямую редактировать файл robots.txt.

    1. Нажмите на Rank Math
    2. Нажмите “Общие настройки” (General Settings)
    3. Нажмите “Редактировать robots.txt” (Edit robots.txt)
    FTP или хостинг

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

    Проверьте наличие периодической блокировки

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

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

    У The Wayback Machine на archive.org также хранится история файлов robots.txt для веб-сайтов, которые они сканируют. Вы можете щелкнуть любую дату, по которой у них есть данные, и посмотреть, как выглядел файл в этот конкретный день.

    Вы также можете воспользоваться бета-версией отчета “Изменения” (Changes), который позволяет легко просматривать изменения содержимого между двумя разными версиями файлов.

    Как это исправить

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

    Проверьте наличие блокировки по user-agent

    Блокировка по user-agent — это блокировка, при которой сайт блокирует определенный user-agent, такого как Googlebot или AhrefsBot. Другими словами, сайт определяет конкретного бота и блокирует соответствующий user-agent. 

    Если вы можете просматривать страницу в своем обычном браузере, но блокируетесь после смены user-agent, это означает, что используемый вами user-agent заблокирован. 

    Вы можете задать конкретный user-agent с помощью инструментов разработчика Chrome. Еще один вариант — использовать расширение браузера для смены user-agent, подобное этому.

    Кроме того, вы можете проверить блокировку по user-agent с помощью команды cURL. Вот как это сделать в Windows.

    1. Нажмите клавиши Windows+R, чтобы открыть окно “Выполнить”.
    2. Введите “cmd” и нажмите “ОК”.
    3. Введите команду cURL, подобную этой:

    curl -A “имя-user-agent -Lv [URL]

    curl -A “Mozilla/5.0 (compatible; AhrefsBot/7.0; +http://ahrefs.com/robot/)” -Lv https://ahrefs.com

    Как это исправить

    К сожалению, это еще один случай, когда процесс исправления будет зависеть от того, где вы найдете блокировку. Бота может блокировать множество разных систем, в том числе .htaccess, конфигурация сервера, брандмауэр, CDN или даже что-то, к чему вас нет доступа. Например то, что контролирует ваш хостинг-провайдер. Лучше всего будет обратиться к вашему хостинг-провайдеру или CDN и спросить их, откуда происходит блокировка и как вы можете устранить ее.

    Например, вот два разных способа блокировки по user-agent в .htaccess, которые вам, возможно, придется искать.

    RewriteEngine On

    RewriteCond %{HTTP_USER_AGENT} Googlebot [NC]

    RewriteRule .* - [F,L]

    или…

    BrowserMatchNoCase "Googlebot" bots

    Order Allow,Deny

    Allow from ALL

    Deny from env=bots

    Проверьте наличие блокировки по IP-адресу

    Если вы подтвердили, что не заблокированы файлом robots.txt, и исключили блокировку по user-agent, то, скорее всего, это блокировка по IP-адресу. 

    Как это исправить

    Блокировку по IP-адресу сложно отследить. Как и в случае с блокировкой по user-agent, лучше всего будет обратиться к вашему хостинг-провайдеру или CDN и спросить их, откуда происходит блокировка и как вы можете устранить ее.

    Вот один пример того, что вы можете искать в .htaccess:

    deny from 123.123.123.123

    Заключение

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

    Остались вопросы? Дайте знать в Twitter.

    Перевела Олеся Коробка, владелец Fajela.com