Кейс: как правильный robots.txt сайт из Google удалил

Таки-здрасьте!

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

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

Дано.
Сайт по велотуризму. Клиент у нас совсем недавно, поэтому на сайте пока что всё плохо. Клиент пожаловался, что сайт полностью вылетел из поисковой выдачи Google. Также заказчик сказал, что кто-то из его программистов что-то делал с robots.txt. ОК, будем посмотреть.

Задача.
Вернуть сайт обратно в Google. Не обязательно в ТОП, достаточно чтобы он просто индексировался.

Что было сделано.
Самое первое, что я сделал - глянул текущий robots. На момент вмешательства он выглядел вот так (версия от 11 августа):

User-agent: *
Disallow: /cgi-bin
Disallow: /?
Disallow: /wp-
Disallow: /wp/
Disallow: *?s=
Disallow: *&s=
Disallow: /search/
Disallow: /author/
Disallow: /users/
Disallow: */trackback
Disallow: */feed
Disallow: */rss
Disallow: */embed
Disallow: */wlwmanifest.xml
Disallow: /xmlrpc.php
Disallow: *utm*=
Disallow: *openstat=
Allow: */uploads
Allow: /*/*.js
Allow: /*/*.css
Allow: /wp-*.png
Allow: /wp-*.jpg
Allow: /wp-*.jpeg
Allow: /wp-*.gif
Allow: /wp-admin/admin-ajax.php
Sitemap: https://velotour-asia.ru/sitemap_index.xml

Как видите, никаких правил, которые запрещают индексирвание всего сайта ( или, скажем, главной страницы) тут нету. Подозрительно, однако!

OK, Google, расскажи же, что не так! Идём в Search Console и пытаемся разобраться. И "от оно чо, Михалыч!" Противоречие однако!

Обратите внимание, что попытка сканирования была 19го числа, т.е. спустя несколько дней после последнего редактирования robots'а. Эй, какого яруса?! Роботс, вроде, в порядке, но Google на него ругается. Как так-то?

В коде страницы я никаких noindex'ов тоже не нашел, т.е. вариант с тегами отпадает.

Далее я просканировал сайт Screaming Frog'ом, предварительно выставив в настройках смартфонный гуглбот (именно смартфонный, т.к. Николай Васильевич Гуголь сканировал сайт именно им). Также в настройках было выставлено Respect robots, чтобы содержимое robots.txt не игнорировалось.

Как видите, все строки (кроме первой) отдают код 200 ОК и имеют статус Indexable. Т.е. со сканированием Фрог проблем не выявил. Странно.

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

Всё страннее и страннее... Томить не буду. Проблему я, кстати, заметил далеко не сразу. Всё внимание на первую строку роботса:

Что это за символ - не понятно. Удаляем и...

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

Если их просто открыть в блокноте, то они выглядят абсолютно идентично. Как говорится, "найдите 10 отличий". Если вместо Блокнота открывать через Notepad++ - будет то же самое.

Однако, размер файлов отличается, пусть даже всего на 3 байта:

Вот блин просто охренеть! Всего 1 символ, который не отображается ни в браузере, ни в блокноте, ни в Notepad++, и сайт вылетел из индекса Google! Как тебе такое, Илон Маск?

0
30 комментариев
Написать комментарий...
fox

Мой любимый utf bom bom?

Ответить
Развернуть ветку
Станислав Заяц
Автор

скриншот из HEX-редактора выше)) 

Ответить
Развернуть ветку
Artem Petrenkov

ага :)

Ответить
Развернуть ветку
Anna Petrova

Это был копипаст текста файла со статьи с рекомендациями как его настраивать 🤣💪

Ответить
Развернуть ветку
Станислав Заяц
Автор

кстати, может быть и так

Ответить
Развернуть ветку
Artem Petrenkov

Не, скорее предыдущий программист просто стал редактировать этот файл в стандартном Блокноте, который этот BOM и добавил.

Ответить
Развернуть ветку
Илитный Иксперт
Также заказчик сказал, что кто-то из его программистов что-то делал с robots.txt

Видать не заплатили челику

Ответить
Развернуть ветку
Sly Death

Миллениалы открыли для себя BOM :)

Ответить
Развернуть ветку
Станислав Заяц
Автор

всё когда-то бывает впервые))

Ответить
Развернуть ветку
Sly Death

Для меня это не успело быть болью, мне поведали о её существовании в начале пути. Трудноуловимый баг, если не понимать куда копать и не использовать профессиональные редакторы кода. Много наших полегло 😆

Ответить
Развернуть ветку
Vladimir Batenev

...changefreq>daily...
из каких соображений? 
по курсу для чего это и как поисковик работает? 

Ответить
Развернуть ветку
Сергей Кокшаров

BOM символ часто портит всю малину, но не знал, что Google посчитает сайт закрытым из-за этого. Надо провести эксперимент, чтобы уж наверняка убедиться в проблеме. Спасибо, Станислав, что поделились историей! 

Ответить
Развернуть ветку
Сергей Кокшаров

Кстати, в документации гугла написано, что BOM игнорируется
https://developers.google.com/search/reference/robots_txt?hl=ru

Ответить
Развернуть ветку
Станислав Заяц
Автор

ну написано-то оно может и написано, но после исправления роботса сайт потихоньку начал возвращаться в индекс

Ответить
Развернуть ветку
VVV

Либо BOM, но это сказали выше. Либо тот кто последний редактировал сайт, делал это через что-то, что корявит файл. Какой-нибудь редактор на Маке, например или какие-то мутки с авто-преобразованием кодировок, что-то такое.

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

Ответить
Развернуть ветку
fox

... его нужно проверить только через vim! 😈

Ответить
Развернуть ветку
ICOOLER

Дама, bom конечно та ещё дрянь)

Ответить
Развернуть ветку
Сергей Игоревич

Очень интересный случай, не встречался с таким.

Правда, у меня однажды тоже сайт в Гугле с корректным роботсом внезапно упал в позициях и не поднимался.

Оказалось, что к сайту был закрыт доступ для всех, кто заходит не из России или СНГ, и Гугл не смог просканировать сайт, т.к. его боты заходят с других регионов, и Гугл выкинул сайт из индекса

Ответить
Развернуть ветку
Станислав Заяц
Автор

надо взять на заметку

Ответить
Развернуть ветку
Никита Пыльников

И в итоге что это за символ был?

Ответить
Развернуть ветку
Станислав Заяц
Автор

вот честно - фиг знает. 

Ответить
Развернуть ветку
Artem Petrenkov

Вероятно UTF BOM. Точнее нужно смотреть в HEX-редакторе.

Ответить
Развернуть ветку
Станислав Заяц
Автор

в исправленном файле этого нет

Ответить
Развернуть ветку
Artem Petrenkov

Именно. Это UTF-8 BOM.

many pieces of software on Microsoft Windows such as Notepad treat the BOM as a required magic number rather than use heuristics. These tools add a BOM when saving text as UTF-8, and cannot interpret UTF-8 unless the BOM is present or the file contains only ASCII.
Ответить
Развернуть ветку
Иван Миронов

ребята, ситуация у меня тоже очень интересная, вроде нормально сделанный сайт, ни каких скаченных шаблонов и тд тп, по пейджспиду красота, по сеочекеру тоже. Но, как обычно, одна пс в топе, вторая в шопе... Может кто-то подсказать на примере одного из сайтов?

Ответить
Развернуть ветку
Станислав Заяц
Автор

какая в топе какая в шопе?

Ответить
Развернуть ветку
Viktor Vetrinskiy

Был такой же опыт ещё два с половиной года назад. Правда проверил сразу после заливки и дал по рукам разработчикам, сайт из индекса вылететь не успел, так что история была бы менее интересной :)

Ответить
Развернуть ветку
Raymondo W. Perez

BOM

Ответить
Развернуть ветку
Елена Сергиенко

Станислав, большое спасибо за разъяснение проблемы простыми словами!!! Теперь мне стало понятно, что это за проблема и как ее можно решить. 

Ответить
Развернуть ветку
Евгений Калинский

Все SEO состоит из таких вот мелочей.
 Что характерно, в robots давно уже нет смысла закрывать от индексации и указывать sitemap. Я вообще думал что он нужен только под Яндекс. И вот тебе на... 

Ответить
Развернуть ветку
27 комментариев
Раскрывать всегда