Вступление
Есть хорошее правило SEO: закрывайте сайт от индексации поисковых систем, до его полной готовности. Есть другие ситуации, при которых нужно временно или не временно, закрыть сайт или часть сайта от поисковых систем. Для этих и некоторых других задач, создан специальный текстовой файл, под названием robots.txt, с помощью которого можно управлять поведением поисковых роботов, в том числе закрыть сайт от индексации.
Директивы и обращение к ботам
В файле robots.txt общение с поисковыми системами происходит при помощи директив Disallow (запрещаю) и Allow (разрешаю). Директивы объединяются в группы, первой строкой группы директив ставят обращение к определенному поисковику или ко всем поисковикам сети. Синтаксис обращения ко всем поисковикам, это же обращение к основному боту Google:
User-agent: *
Синтаксис обращения к Яндекс:
User-agent: Yandex
Как полностью закрыть сайт от индексации поисковых систем
Чтобы закрыть весь сайт от индексации Яндекс и сканирования всех ботов сети используют следующие строки прописанные в robots.txt:
User-agent: *
Disallow: /
К сожалению, некоторые боты не выполняют общепринятых правил и игнорируют обращение [User-agent: *]. Поэтому, для некоторых поисковиков нужно прописывать свои обращения и закрывать сайт от них индивидуально. Так, чтобы закрыть сайт от индексации основных ботов Яндекс, используем следующие строки:
User-agent: Yandex Disallow: /
Чаще, на практике прописав в файле robots.txt две директивы Disallow для всех поисковиков и для Яндекс индивидуально, считается, что сайт полностью закрыт от индексации.
Важно. После двоеточия в директивы нужно делать пробел, после окончания директивы пробелов быть не должно.
Обратите внимание, что можно обратиться к любому поисковику и зарыть сайт от конкретного поисковика. Так русские сайты можно закрыть от Yahoo. Можно закрыть сайт от спам ботов и т.д.
Как закрыть отдельный каталог сайта от индексации
Косая черта (слэш) в директиве Disallow означает, что мы закрываем все файлы и каталоги сайта корневой папки. Если нужно закрыть сайт, лежащий не в корне, а скажем, в папке site, пишем директиву так:
Disallow: /site/
Аналогично можно закрыть любую отдельную папку сайта.
Как закрыть отдельный файл сайта от индексации
Чтобы закрыть отдельный файл (file.php) она же страница, от индексации, в файле robots.txt пишем директиву:
Disallow: /site/file.php
Например, чтобы на Joomla закрыть от индексации страницу регистрации, пишем следующую директиву:
Disallow: /users/registration.html
Или в зависимости от настроек ЧПУ:
Disallow: /users/registration
Как закрыть шаблонный файл от индексации
В завершении покажу, как закрыть от индексации файл, в URL которого входит шаблон, например, index.php.
Disallow: */index.php*
Этой директивой мы закроем все файлы сайт в URL которых, есть index.php. Для Joomla закроет все не ЧПУ ссылки. Иногда эту директиву прописывают более жестко:
Disallow: ******/index.php******
В завершении о директиве Allow
Если вам нужно открыть какой или какие либо файл (файлы) из закрытого каталога, после директивы Disallow: для каталога, пропишите директорию Allow: для файла (файлов).
User-Agent: *
Disallow: /images
Allow: *.jpg
Allow: *.png
Тем самым, закрывается всё содержимое каталога images сайта, но открываю, только картинки формата jpg и png.