Здравствуйте, уважаемые читатели моего блога! В этой статье я расскажу о файлах .htaccess и robots.txt — как их грамотно настроить. Это крайне важные файлы, которые позволяют задать главное зеркало сайта (склеить домены с www и без), настроить индексацию страниц, создать редирект 301. Дополнительно рассмотрим порядок действий при переезде со старого домена на новый.

настройка robot.txt

Файл .htaccess и главное зеркало сайта

Каждый интернет ресурс имеет два зеркала — с приставкой www и без нее. Чтобы поисковики не воспринимали эти зеркала как два разных сайта с одинаковым контентом, необходимо выбрать из них главное и настроить редирект 301 на него, со второго зеркала. Тогда оба зеркала поисковиками будут восприниматься как единое целое и не будет играть роли, на какое из них ссылаются сторонние сайты — редирект позволит автоматически перекидывать пользователя на нужный адрес. Для этого необходимо создать и настроить файл .htaccess. Дополнительно можно указать основное зеркало в Яндекс Вебмастер и Google — инструменты для веб-мастеров. Для поисковиков все равно, какое зеркало вы выберете основным, поэтому исходите из своих личных предпочтений.

Зайдите на ftp в корневую папку и проверьте наличие файла .htaccess. Файл является скрытым, поэтому ftp клиенты могут его и не отображать. В ftp клиенте FileZilla следует включит функцию «Принудительно отображать скрытые файлы» в разделе «Сервер».

Файл .htaccess

Для редактирования или создания файла .htaccess можно воспользоваться любым текстовым редактором. Только при создании укажите имя .htaccess, не забыв про точку в начала. Пропишите в нем следующие строчки (или добавьте их к уже имеющимся):

Редирект 301 с зеркала www на без www:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.vash_sait\.ru$ [NC]
RewriteRule ^(.*)$ http://adres_saita.ru/$1 [R=301,L]

Обратный вариант — редирект 301 с зеркала без www на с www:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^vash_sait\.ru$ [NC]
RewriteRule ^(.*)$ http://www.adres_saita.ru/$1 [R=301,L]

Только не забудьте вписать свой URL адрес. После этого еще необходимо прописать директиву Host в фале robots.txt, о чем читайте в следующем пункте.

Robots.txt — настройка индексации страниц сайта

Файл robots.txt указывает поисковикам, какие страницы сайта им можно индексировать, а какие нельзя. Для его создания можно воспользоваться любым текстовым редактором, даже блокнотом. Так же как файл .htaccess, robots.txt следует загрузить на ftp в корневую папку. Теперь рассмотрим основные директивы, которые следует прописывать в robots.txt.

User-agent — в этой директиве прописываются поисковые боты, для которых действуют указанные ниже настройки. Если указать символ *, то настройки будут относится ко всем поисковикам:

User-agent: *

Вот список имен ботов самых популярных поисковых систем:

Google       Googlebot
Яндекс       Yandex
Rambler      StackRambler
Mail.ru      Mail.Ru
Yahoo!       Slurp (или Yahoo! Slurp)
Alexa        ia_archiver

После User-agent обязательно должна следовать директива Disallow или Allow.

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

Следует соблюдать следующие правила:

  • Недопустимо наличие пустых строк между директивами 'User-agent' и 'Disallow' ('Allow'), а также между самими директивами 'Disallow' и 'Allow'.
  • Перед каждой новой директивой 'User-agent' обязательно оставляйте пустую строку.
  • После названия директивы ставьте <двоеточие><провел><параметр>.
  • Allow и Disallow из соответствующего блока User-agent сортируются по длине URL (от меньшего к большему) и применяются последовательно. Если для данной страницы подходит несколько директив, то выбирается последняя в порядке появления в сортированном списке. Этот пункт будет более понятен после рассмотрения примеров, приведенных ниже.
  • при отсутствии параметров в директивах Allow и Disallow, индексация соответственно запрещается или разрешается для всех страниц сайта.

Теперь рассмотрим примеры, чтобы все стало более понятно.

User-agent: *
Disallow:

Звездочка в директиве User-agent указывает на то, что приведенные ниже настройки относятся ко всем поисковикам. Отсутствие параметров в Disallow соответствует разрешению индексации всего сайта.

User-agent: Googlebot
Allow: /zapisi
Disallow: /

Настройки относятся только к роботу Гугла. Они предписывают запретить индексацию всего сайта, кроме страниц из /zapisi. Порядок следования Allow и Disallow не имеет значения, главное длина URL — в директиве Allow он длиннее, поэтому является исключением из правил, указанных в Disallow.

Помимо этого можно использовать спец символы — «*» и «$»:

* — любая (в том числе пустую) последовательность символов. По-умолчанию в конце каждого правила добавляется символ «*»:

Disallow: /indeksaciya  = Disallow: /indeksaciya*

Это означает запрет индексации всех страниц, которые начинаются с «/indeksaciya», то есть /indeksaciya, /indeksaciya.html и другие. Символ $ позволяет отметить действие *, тем самым конкретизировать правило:

Disallow: /indeksaciya$

В этом случае запрет будет распространятся только на /indeksaciya, но не на /indeksaciya.html.

Директивы Host и Sitemap воспринимается только ботами яндекса и служат для указания главного зеркала и адреса карты сайта.

Обязательно отделите данный блок от остальных настроек robots.txt пустой строкой.

Для зеркала с www:

User-agent: Yandex
Disallow:
Host: www.vash_site.ru
Sitemap: http://www.vash_site.ru/sitemap.xml.gz
Sitemap: http://www.vash_site.ru/sitemap.xml

Для зеркала без www:

User-agent: Yandex
Disallow:
Host: vash_site.ru
Sitemap: http://vash_site.ru/sitemap.xml.gz
Sitemap: http://vash_site.ru/sitemap.xml

Порядок переезда со старого домена на новый

Переезд со старого домена на новый является частным случаем склейки зеркал сайта. Яндекс рекомендует два пути решения данной проблемы: через директиву Host в файле robots.txt или через настройку редиректа 301 со старого адреса на новый в .htaccess. Так как директиву Host понимает только Яндекс, то лучше подстраховаться и выполнить оба этих варианта.

1. Купите новый домен и хостинг.

2. Перенесите на новый сервер все содержимое своего интернет ресурса.

3. На старом сайте в файле robots.txt в директиве Host укажите новый URL адрес.

4. В файле .htaccess настройте редирект 301:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^staryj_adres.ru$   
RewriteRule (.*) http://novyj_adres.ru/$1 [R=301,L]

Не забывайте указывать именно главные зеркала — с приставкой www или без нее.

5. Склейка займет определенное время, на протяжении которого оба интернет портала должны быть доступны.

На этом все, спасибо за внимание! Подписывайтесь на новости блога. Всех вам благ!

Лучший способ выразить благодарность автору - поделиться с друзьями!

Узнавайте о появлении нового материала первым! Подпишитесь на обновления по email:

Следите за обновлениями в Twitter и RSS.