Файл robots.txt
Для управлений индексацией сайта поисковыми системами существует файл robots.txt. Если рассуждать глобально, то файл robots.txt позволяет запрещать одни файла или каталоги для индексации и разрешать другие. Вот о том, как этим файлом пользоваться, как разрешать и запрещать индексацию определённых страниц и каталогов, Вы узнаете из этой статьи.
Robots.txt - это обычный текстовый файл, который расположен в корне сайта. Файл robots.txt состоит из набора директив, каждая из которых сообщает какую-либо информацию поисковому роботу.
Но прежде чем приступать к разбору различных директив, нужно определиться с общим синтаксисом:
директива:значение
Как видите, синтаксис самый наипростейший. А теперь давайте разберём самые важные директивы.
User-Agent
Эта директива означает, к какому роботу относятся все последующие директивы. Если стоит значение "*", то это относится абсолютно ко всем поисковым роботам. Если же Вы хотите выделить определённую поисковую систему, то необходимо поставить в качестве значение имя поискового робота (например, "Yandex", "Google", "Rambler", "Mail" и так далее). Пример использования директивы "User-Agent":
User-agent: Google
Allow
Allow
Данная директива разрешает индексацию указанных в значении элементов. Например, так:
Allow: /images
В данном примере мы разрешаем индексацию каталога "images".
Disallow
Противоположность директиве "Allow", то есть, наоборот, запрещает индексацию указанных элементов. Пример:
Disallow: /library
Также очень важно помнить о приоритете. Приоритет имеет та директива, которая расположена выше. Например, в таком файле robots.txt:
Allow: /images
Disallow: /
Disallow: /
Здесь запрещается индексировать сайт полностью ("Disallow: /"), но так как у нас до этого идёт директива Allow, и она является приоритетной, то на индексацию каталога "images" запрет не распространяется.
Или, например, такой вариант:
Disallow: /
Allow: /images
Allow: /images
В данном примере, мы сначала всё запрещаем, а потом пытаемся разрешить индексацию каталога "images", однако, этого не произойдёт. Так как директива Disallow стоит раньше, и она имеет более высокоий приоритет. То есть результатом данного файла robots.txt будет полный запрет индексации сайта.
*
"*" используется в директивах Allow и Disallow, и "*" означает любую последовательность символов. Чтобы стало понятнее, привожу пример:
Disallow: /library/*.php
Таким образом, мы запрещаем индексацию всех PHP-файлов в директории "library". Однако, файл "library/page.html" будет доступен для индексации.
Sitemap
Использовать данную директиву нужно только в том случае, если у Вас имеется XML-версия карты сайта. В значении данной директивы необходимо указать полный путь к карте сайта. Например, так:
Sitemap: http://mysite.ru/sitemap.xml
Host
Host
Данную директиву понимает только Яндекс, поэтому другие поисковые роботы данную директиву просто пропустят. Содержит "Host" адрес основного сайта. Допустим, у Вашего сайта имеется несколько зеркал (например, mysite.ru, mysite.com, mysite.net и так далее). В значении данной директивы необходимо указать основной адрес:
Host: mysite.ru
Также данная директива полезна для устранения дублирования с www, так как по сути www.mysite.ru и mysite.ru - это два совершенно разных сайта с точки зрения поисковой системы: Просто укажите то значение (с www или без) в значении директивы Host, которое Вы хотите, и это дублирование пропадёт. Однако, не забывайте, что это поймёт только Яндекс, а для Google надо всё-таки задавать 301 редирект (здесь более подробно об этом). Поэтому используйте данную директиву, как дополнительное лекарство, а не как основное.
Clean-param
Последняя директива, которая иногда имеет очень серьёзное значение, это "Clean-param". Если Ваш сайт динамический, и ссылки имеют GET-параметры, то очень часто в GET передаются параметры, которые не влияют на содержимое страницы. Например, два адреса одной и той же страницы:
http://mysite.ru/index.php?id=15&sid=fdsl3l39dsfdsl3l39ds93fdsl3l39ds
http://mysite.ru/index.php?id=15&sid=a4hl33392gfhnlz4hdklf3fd372dvxfs
http://mysite.ru/index.php?id=15&sid=a4hl33392gfhnlz4hdklf3fd372dvxfs
Фактически, данные ссылки отличаются значением параметра "sid", а потому для поисковой системы это две совершенно разных страницы. Однако, очень часто такие параметры никак не меняют контент страницы. И вот для того, чтобы убрать дублирование (злейший враг оптимизации), возникающее вот от таких параметров, нужно использовать директиву "Clean-
param":
Clean-param: sid /index.php
Clean-param: sid /index.php
Это, пожалуй, все самые важные и самые частоиспользуемые директивы файла robots.txt. Есть ещё несколько, но они используются крайне редко, и лучше ими голову не забивать, хотя, если хотите, то можете поискать в Интернете.
И, напоследок, приведу пример своего файла robots.txt (на момент написания статьи), а также подробно его поясню:
User-agent: *
Disallow: /admin
Disallow: /captcha
Disallow: /js
Disallow: /lib
Disallow: /scripts
Disallow: /print.php
Sitemap: http://myrusakov.ru/sitemap.xml
Host: phpblog.info
Disallow: /admin
Disallow: /captcha
Disallow: /js
Disallow: /lib
Disallow: /scripts
Disallow: /print.php
Sitemap: http://myrusakov.ru/sitemap.xml
Host: phpblog.info
В данном robots.txt для всех поисковых роботов запрещена индексация следующих каталогов: "admin", "captcha", "js", "lib", "scripts". Также запрещена индексаци файла "print.php". Путь к XML-версии карты сайта: "/sitemap.xml". Основной адрес сайта - "myrusakov.ru".
И главное правило, которое используется чаще всего при составлении robots.txt - это "всё, что не запрещено - разрешено". Фактически, в примере robots.txt, я ничего не разрешал, а только запрещал. Это означает, что всё, что я не запретил, поисоковый робот может индексировать. Вот такое простое правило. Другими словами, если Вы создавать файл robots.txt не будете, то Ваш сайт будет индексироваться полностью от начала и до конца, что не всегда хорошо, так как поисковому роботу совсем необязательно индексировать различные скрипты и системные файлы. Вот для задания запретов и существует файл "robots.txt", о котором Вы теперь знаете всё, что нужно.
Комментариев 0