Как создать 301 редирект домена без WWW на домен с WWW
301 редирект это наилучший метод сохранения ваших позиций в поисковых системах, когда вы переносите страницу или сайт.
Поисковые системы считают сайты http://domain.com и http://www.domain.com абсолютно разными. Отсюда следует, что если часть сайтов будет ссылаться на http://domain.com, а другая часть на http://www.domain.com, то ссылочная популярность Вашего сайта делится между разными доменами.
Например нужно поклеить урлы вашего сайта с www и без. Если урлы не склеены, то поисковики считают их разными сайтами. Робот читает domain.com и вносит его в индекс, потом приходит по другой ссылке на www.domain.com и вносит в индекс его. Получается у вас есть 2 разных сайта с одинаковым содержимым и разделенными ссылками (часть ссылок - на domain.com, часть - на www.domain.com). Ссылочная популярность падает, контент дублируется - ничего хорошего.
Потеря ранжирования на различных поисковых системах часто происходит из-
за неоригинального контента, например, в поисковых системах Google и Yahoo.
При правильной настройке вне зависимости используется или нет www во
внешних ссылках на страницы, сайт будет восприниматься как главный.
Хороший способ склеивания - 301 редирект. Есть много путей его реализации.
Вот пример реализации 301 редиректа через mod_rewrite:
Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^domain.com [nc]
rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]
Этот код нужно поместить в файл .htaccess. В результате ваш домен domain.com будет передавать ссылочное на www.domain.com (это и будет ваш основной домен).
Или добавьте в файл .htaccess следующие строки, но не забудьте заменить domain.com на адрес своего сайта
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain.com
RewriteRule (.*) http://www.domain.com/$1 [R=301,L]
И наоборот, кому надо редирект домена с WWW на домен без WWW:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.domain.com$ [NC]
RewriteRule ^(.*)$ http://domain.com/$1 [R=301,L]
Проверка выполненного.
Откройте браузер и в адресной строке введите адрес своего сайта без WWW,
например http://domain.com и зайдите на сайт. Если Вы все сделали правильно,
то в адресной строке браузера автоматически произойдет изменение, адрес
сайта с введенного Вами сменится на http://www.domain.com.
Чтобы быть уверенным в успешности проделанного Вы можете зайти на интересный
буржуйский SEOсервис, и ввести адрес сайта без WWW. Он покажет
Вам, работает ли настроенный Вами 301 редирект или нет. Если Вы все сделали
правильно, то должны будете увидеть:
#1 Server Response: http://domain.com
HTTP Status Code: HTTP/1.1 301 Moved Permanently
Date: Sat, 24 Jan 2009 22:37:12 GMT
Server: Apache/2.2.3 (CentOS)
Location: http://www.domain.com/
Content-Length: 311
Connection: close
Content-Type: text/html; charset=iso-8859-1
Redirect Target: http://www.domain.com/
#2 Server Response: http://www.domain.com/
HTTP Status Code: HTTP/1.1 200 OK
Date: Sat, 24 Jan 2009 22:37:12 GMT
Server: Apache/2.2.3 (CentOS)
X-Powered-By: PHP/5.1.6
Connection: close
Content-Type: text/html; charset=cp1251
Если Вы это увидели, значит все сделано верно.
Данная установка 301 редиректа работает только на Apache сервере!