Прелюдия: 301-й редирект необходим для того чтобы указать поисковым системам что весь сайт или некоторые его страницы переехали на другой адрес навсегда. Есть еще временный, 302-й редирект. Но для нас он не важен.
Зачем мне 301-й редирект?
1. Кроме своего прямого предназначения, - указания о том что сайт переехал, он может использоваться для подсказки поисковым системам, что www.domen.ru и domen.ru - есть один и тот же сайт и показатели ТИЦ и PR для них стоит не разделять а складывать. Хотя все ПС сейчас достаточно умны и в 99% сами отлично определяют это. К тому же в панели вебмастера google есть возможность прямого указания желаемого домена, что просто обязан повторить и Яндекс в своей админке.
2. Для отображения нужного адреса в адресной строке (зайдите на google.ru и увидите что вас перенаправят на www.google.ru)
Это пояснение большее имеет смысла для Яндекса. Почему, объясню в конце. Действительно только для apache с включеным mod_rewrite (для хостеров это норма)
К примеру я хочу чтобы мой domen.ru редиректился на www.domen.ru:
Как сделать 301-й редирект для своего сайта?
а. Необходимо указать для Яндекса в файле robots.txt какой домен является главным:
User-agent: Yandex
Disallow: /administrator
Host: www.domen.ru
б. Обязательно(!) убедиться что Яндекс считает главным зеркалом нужный вам домен.
Сделать это можно в панели веб-мастера Яндекса, попытавшись добавить сайт с www и без. Иначе - ждем (ждать может, придется от недели до двух месяцев).
в. Настроить файл .htaccess подобным образом:
RewriteEngine On
Options +FollowSymlinks
RewriteBase /
RewriteCond %{HTTP_HOST} ^domen\.ru$ [NC]
RewriteRule ^(.*)$ http://www.domen.ru/$1 [R=301,L]
г. Проверить редирект домена (и обязательно внутренних страниц) необходимо здесь(с рекламой) или здесь (без рекламы, инфы дает меньше, но вполне достаточно и этого)
д. Развивать сайт дальше, не опасаясь что ссылки на сайт без "www" не учтутся.
В приципе все просто, но я в свое время сделал ошибку на каждом этапе. В результате сайт висел вне индекса Яндекса очень долгое время. Гугл же оказался более умен и "проглатил" мои ошибки без последствий.
Надеюсь, это кому-нибудь да поможет