yakoffka.ru
грабли, костыли и велосипеды php, css, html, js и прочего

Склейка доменных имен с www и без

Многие поисковые системы воспринимают www.domain.com и domain.com как разные ресурсы, со всеми вытекающими отсюда неприятностями, влияющими на раскрутку сайта.

В настоящее время приставка "www" перед доменным именем является ана­хро­низ­мом, так как сайты с доменными именами www.mydomain.com и www.mydomain.com являются зеркалами друг друга.

Чтобы избавиться от возникшей путаницы и иметь возможность раскручивать один сайт необходимо в файле .htaccess в корне сайта добавить перелинковку с домена с www на домен без www:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.mydomain.com$ [NC]
RewriteRule (.*) http://mydomain.com/$1 [R=301]

либо сделать наоборот, и переадресовать запросы типа http://mydomain.com на http://www.mydomain.com

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^mydomain.com$ [NC]
RewriteRule (.*) http://www.mydomain.com/$1 [R=301]

Я рекомендую использовать первый вариант, так как от анахронизмов надо избавляться.

Модификация .htaccess хороша тем, что используя регулярные выражения, мы, тем самым, сохраняем структуру ссылки, то есть, например, при обращении к ресурсу mydomain.com/art вы будете переадресованы на www.mydomain.com/art.

P.S. Важно сделать склейку зеркал до регистрации в поисковых системах, так как последние выбирают главное зеркало как пожелают. Если время упущено и индексирование сайта произведено, то используйте первый или второй вариант исходя из сложившихся предпочтений ПС.