Множество сайтов в сети интернет доступны с адресами доменов с «www» и без него, при этом сайт позиционируется как один — с единым содержимым. Если человек вводит в адресной строке домен вашего сайта с «www» либо без него, то скорее всего, он подразумевает именно тот сайт, который находиться за ключевым доменом, второго, а иногда и третьего уровня. Ему важно получить содержимое сайта, и менее важно как он его набирает с «www» либо без. Однако с поисковыми системами дела обстоят немного иначе. Поисковые системы домен с «www» и без него воспринимают как два разных ресурса, это в свою очередь косвенно влияет на ранжирование и индексацию сайта. В этом случае разработчику предстоит донести до поисковых систем, что сайт с «www» и без него – это единое целое. К счастью, это делается несложно, достаточно сделать перенаправление с http-заголовком 301 («перенесен навсегда») на целевой адрес.
Сделать редирект можно несколькими способами, в этом примере мы будем это делать с помощью файла .htaccess, который будет размещаться в корне сайта. Так же следует убедиться, что на в Apache включен модуль mod_rewrite, если вы пользуетесь CMS, то скорее всего он у вас включен, так как зачастую для их работы это так же является важным условием.
Рассмотрим несколько способов 301-редиректа c «www» на без «www».
Способ первый:
<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.href\.kz$ [NC] RewriteRule ^(.*)$ https://href.kz/$1 [R=301,L] </IfModule>
Способ второй:
<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.(.*) [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L] </IfModule>
Способ третий:
<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine On RewriteCond %{HTTP_HOST} !^href\.kz$ [NC] RewriteRule ^(.*)$ https://href.kz/$1 [R=301,L] </IfModule>
Теперь у вас есть три способа 301-редиректа с «www», разница лишь в условии проверки, теперь посмотрим, как можно сделать перенаправление с адреса без «www» на адрес с «www», в этом случае так же известны пара способов.
Редирект на домен с «www».
Способ первый:
<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine On RewriteCond %{HTTP_HOST} ^href.kz$ [NC] RewriteRule ^(.*)$ http://www.href.kz/$1 [R=301,L] </IfModule>
Способ второй:
<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine On RewriteCond %{HTTP_HOST} !^www\.(.*) [NC] RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L] </IfModule>
Способов реализации перенаправления на самом деле может быть большое количество, удобнее выбрать один, который вам подходит. Так же есть возможность сделать 301-редирект для отдельных страниц и разделов. В завершении следует добавить, после того как вы организовали перенаправление на сайте, рекомендуется проверить на наличие ошибок индексации в панели управления Google Веб-мастер и Яндекс Веб-мастер. В файле robots.txt вашего сайта (если таковой есть вообще) следует так же перепроверить директиву Host, при необходимости внести поправку.