Распространенные ошибки при работе с robots.txt и как их избежать

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

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

1. Вы не повторяете общие User-agent в конкретных блоках User-agent

Боты поисковой системы будут придерживаться ближайшего соответствующего блока user-agent в файле robots.txt, а другие блоки user-agent будут игнорировать.

В этом примере робот Googlebot будет следовать только одному правилу, специально указанному для робота Google, и игнорировать остальные.

  1. User-agent: *
  2. Disallow: /something1
  3. Disallow: /something2
  4. Disallow: /something3
  5. User-agent: Googlebot
  6. Disallow: /something-else

Учитывая это, важно повторять общие директивы user-agent, которые применяются к более конкретным ботам, при добавлении правил и для них тоже.

2. Забываете о том, что выигрывают самые длинные совпадения 

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

Например:

  1. Disallow: /somewords
  2. Allow: /someword

В приведенном выше примере example.com/somewords будет отклонен, поскольку в правиле disallow есть больше совпадающих символов.

Однако вы можете обмануть систему, используя дополнительные символы подстановки (*), чтобы увеличить разрешающее правило в этом примере.

  1. Disallow: /somewords
  2. Allow: /someword*

3. Добавляете специальные символы в конце правил 

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

  1. Disallow: /somewords*

4. Не используете отдельные правила для каждого субдомена и протокола

В файлах Robots.txt следует избегать включения правил, охватывающих разные субдомены и протоколы. Каждый поддомен и протокол в домене требует своего отдельного файла robots.txt. Например, для https://www.example.com, http://www.example.com, а также subdomain.example.com. должны существовать отдельные файлы robots.txt 

5. Указываете относительный путь URL карты сайта

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

  1. /sitemap.xml

не подойдет, а:

  1. https://www.example.com/sitemap.xml

будет работать корректно.

  1. Sitemap: /sitemap.xml
  1. Sitemap: https://www.example.com/sitemap.xml

6. Игнорируете чувствительность к регистру

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

  1. Disallow: /something
  2. Disallow: /Something

7. Добавляете несуществующий завершающий слэш 

Убедитесь, что не ставите ненужного завершающего слэша в robots.txt, где этого не надо. Например, /path/ когда актуальный URL /path будет означать, что www.example.com/path не подойдет и будет исключен.

  1. Disallow: /path/
  2. Disallow: /path

8. Не начинаете запрещающее правило со слэша 

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

Это правило будет запрещать только каждый URL, который находится в корневом пути www.example.com/something:

  1. Disallow: /something

Это правило запрещает каждый URL, который содержит «something», например, www.example.com/stuff/something-else.

  1. Disallow: *something

9. Забываете о пользовательских агентах Googlebot, что приведет к использованию более общих токенов 

Пользовательские агенты Googlebot прибегнут к более общему токену пользовательского агента, если для этого конкретного блока не включены конкретные блоки. Например, googlebot-news будет возвращаться к googlebot, если для googlebot-news нет определенных блоков.

10. Подбираете зашифрованные URL к незашифрованным правилам

Зашифрованные URL должны соответствовать незашифрованным правилам, однако незашифрованные URL не будут соответствовать зашифрованным правилам. Убедитесь, что ваши правила не зашифрованы, по крайней мере, в соответствии с инструментом тестирования robots.txt.