Htaccess редирект с www и без www (301)

301 редирект

Для поисковых систем домен с www и домен без www — это два разных ресурса и для того, чтобы они правильно его воспринимали, индексировали и ранжировали как единое и уникальное целое нужен 301 редирект («перенесен навсегда») с одного домена на другой.

Самый простой вариант редиректа — при помощи файла .htaccess, который находится в корне сайта, для его осуществления необходим включенный модуль mod_rewrite. А в случае если этот моду выключен или у вас нет доступа к файлу htaccess, вы можете использовать редирект на PHP.

301 редирект с www

Существует несколько правильных вариантов 301 редиректа в htaccess, и какой из них вы выберете не имеет никакого значения.
Первый самый простой и понятный вариант редиректа с www:

<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.site.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]
</IfModule>

Второй вариант редиректа с www:

<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
</IfModule>

Третий с условием от противного вариант редиректа с www:

<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} !^site.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]
</IfModule>

301 редирект на www

Как и в редиректе с www, для редиректа на www есть несколько правильных способов, выбирайте который по душе.
Первый вариант редиректа на www:

<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^site.ru$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]
</IfModule>

Второй вариант вариант редиректа на www с условием от противного:

<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.(.*) [NC]
RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L]
</IfModule>

Для редиректов отдельных страниц, файлов и даже бана пользователей при помощи htaccess вы можете воспользоваться генератором редиректов.

Важно!

Не забываем, поставив редирект с одного домена на другой, выбрать свой предпочтительный домен в аккаунте Google, а для Яндекса прописать в файле robots.txt директиву: «Host: site.ru».

После переиндексации сайта желательно зайти в панель управления сайтом Яндекс Вебмастер и Google веб мастер и проверить правильно ли проиндексировались страницы, нету ли каких-либо ошибок или недоступных страниц, и только если все в порядке можно спать спокойно — пере адресация настроена правильно и без ошибок.

Читайте также: редиректы домены htaccess