11 августа 2012 г.

robots.txt - Синтаксис не распознается Google'ом

Добавил один из своих сайтов в Инструменты для веб-мастеров от Google. И вдруг обнаружил, что почему-то Google напротив первой строчки в robots.txt, а именно User-Agent: *, пишет "Синтаксис не распознается" ("Syntax not understood").

Я кинулся проверять. Да нет, вполне нормальный синтаксис. Обращение к любым юзер-агентам, так сказать.

Но Google'у что-то не нравится.

Как оказалось проблема была вот в чем.


Если вы создали этот файл вручную, да еще и Windows (например, в программе Блокнот/Notepad) и еще сохранили его в формате UTF-8, Google будет обязательно ругаться.

Почему?

Потому что Windows сохраняет текстовые файлы в формате UTF-8, вставляя в самом начале файла так называемый BOM (Byte Order Mark), т.е. "метку порядка следования байтов".

Вы можете сами удостовериться, проверив свой robots.txt например здесь. Там нужно выбрать протокол (http, https), ввести в поле адрес к своему файлу и выбрать пункт "view source with count of links and images, and readability report", а затем нажать "Go".

У меня как раз такой BOM и оказался в начале файла.

User-agent: *

Исправить это можно, например, пересохранив файл в формате ANSI, и заменив неправильный robots.txt правильным на вашем сайте.

3 комментария:

  1. Спасибо помогло, поменял кодировку с UTF8+BOM на UTF8 в notepad++ )

    ОтветитьУдалить
  2. Обычно не пишу комментарии на сайтах. Спасибо за статейку) Такая же проблема была. Нотепад++ помог

    ОтветитьУдалить