SEO. 301 редирект. Домены с www и без www

SEO. 301 редирект. Домены с www и без www

Домены с www и без www – история появления, использование 301 редиректа для их склеивания

Есть мнение, и оно не безосновательно, что каждый сайт должен иметь 301 редирект, который был бы настроен так, чтобы один из сайтов, с или без www, был главным (например, для сайта pro seo, главным является https://pro-seo.pro, и при заходе по адресу www.pro-seo.pro, вас автоматически перебросит на pro-seo.pro). Для чего это нужно, спросите вы? Об этом я постараюсь рассказать в этом посте, но начать, пожалуй, стоит с истории зарождении самой проблемы, связанной с использованием или не использованием приставки WWW в названии сайта.

Откуда появилась приставка WWW и что в этом плохого для начинающего вебмастера

Примерно десять лет назад World Wide Web (Всемирная паутина — то, что мы сейчас и считаем, собственно, интернетом) была лишь малой частью интернета, а сервера были очень слабенькими, поэтому приходилось размещать, например, сервер Apache на одном компьютере, почтовый сервер на другом, а сервер FTP на третьем. Имена серверов начинались с названия машин, на которых они располагались, и в зависимости от предоставляемого сервиса, выглядели так: www.domain.com, mail.domain.com, и ftp.domain.com (а так же совсем раритет — gopher.domain.com).

В настоящее же время приставка www является анахронизмом и должна была бы благополучно отмереть, однако, до сих пор существует масса каталогов, которые автоматически прибавляют к имени сайта вида domain.com пресловутое www. Так же существует немало пользователей, которые автоматически набирают в браузерах адрес сайта с www в начале (все же знают песню группы Ленинград). Поэтому www остается и создает очень интересную ситуацию. Получается, что www.domain.com и domain.com технически считаются полностью различными объектами, причем www.domain.com является родственным домену третьего уровня вида sub.domain.com. Но при этом же, обычно, www.domain.com и domain.com ведут (или должны вести) на одну и туже страницу (в отличии от субдомена sub.domain.com), т.е. получается, что каждый только псевдоним для другого (алиас или же по англицки alias).

Конечно же, можно все это пропустить и не забивать голову, но если вы всерьез заботитесь о продвижении вашего сайта в поисковых системах, то это может быть серьезной помехой у вас на пути. Смотрите сами что получается. Многие поисковики воспримут domain.com и www.domain.com как разные сайты, со всеми вытекающими отсюда последствиями. А именно — все внешние ссылки на ваш сайт будут делится на две части, в зависимости от того, в каком виде на вас проставили ссылку (с www или же без него). Получается, что вы лишаетесь части внешних ссылок на ваш сайт, а это, соответственно приводит к понижению сайта в рейтинге поисковиков, и пользователей с них к вам будет приходить меньше, чем могло бы. Кроме этого еще нужно учитывать то что серьезные поисковики (Google, например) борются за уникальный контент и не индексируют страницы (и даже сайты целиком) двойники, что чревато для нашей ситуации. Поясню.

Допустим, что домен domain.com стал популярным и на него много ссылаются, но, как на зло, при начальной индексации сайта поисковик нашел первым домен www.domain.com и теперь получается, что domain.com стал двойником (не имеет уникального содержания) и с большой долей вероятности он выпадает из рейтинга. Печально, не правда ли? Теперь поговорим о том, как этого избежать. Кто-то очень умный придумал способ как переадресовать один псевдоним к другому, который по существу является переадресацией к самому себе. Способ это называется Редирект и существует несколько вариантов его реализации на разных серверах. Я приведу здесь самый простой на мой взгляд способ, с использование файла .htaccess.

Редирект 301: с WWW на без WWW и наоборот

Файл .htaccess нужно создать в корневом каталоге сайта или открыть на редактирование, если он уже имеется. Этот файл является скрытым и поэтому, чтобы его увидеть нужно зайти в корневую папку вашего сайта на сервере и в верхнем меню программы FileZilla выбрать пункт «Сервер» — «Принудительно отображать скрытые файлы».

Итак, открываем этот файл обычным текстовым редактором, можно к примеру в Notepad++, и дописываем следующие строки для варианта редиректа с www на без www:

  • Options +FollowSymLinks
  • RewriteEngine On
  • RewriteCond %{HTTP_HOST} ^www.vash_sait\.ru$ [NC] 4 RewriteRule ^(.*)$ http://vash_sait.ru/$1 [R=301,L]

Вариант редиректа с без WWW на WWW:

  • Options +FollowSymLinks
  • RewriteEngine On
  • RewriteCond %{HTTP_HOST} ^vash_sait\.ru$ [NC]
  • RewriteRule ^(.*)$ http://www.vash_sait.ru/$1 [R=301,L]

Не забывайте про обратную наклонную черту перед точкой (.) в строке RewriteCond — она обязательна. Вы можете так же ознакомиться и с другими вариантами 301 редиректа. При 301 редиректе Google должен объединять PR сайтов. Теперь, кстати, ваш сайт будет доступен и по доменному с www, так и без www, но в адресной строке вас будет перебрасывать на то имя, на которое вы настроили редирект. Этот способ называется «перенаправление с шаблоном». В результате получается следующее: если набрать в адресной строке, например, http://www.pro-seo.pro, то пользователь будет автоматически перемещен на ту же страницу, только без www – https://pro-seo.pro

Директива Host, позволяющая задать главное зеркало сайта для Яндекса 

Для Яндекса дополнительно надо определить какое зеркало сайта является главным, с помощью директивы ‘Host‘ в файле Robots.txt. Он также, как и файл .htaccess находится в коневом каталоге вашего сайта (если его там не окажется, то вам нужно будет его создать у себя на компьютере, в любом текстовом редакторе, а затем закинуть в корень сайта по FTP). Код добавляемый в Robots.txt должен выглядеть следующим образом:

1 User-agent: Yandex 2 Disallow:

3 Host: pro-seo.pro

Лучше будет вынести директиву ‘Host’ в отдельную секцию, предназначенную только для робота Яндекса (User-agent: Yandex), т.к. возможно, что другие поисковики (Google, например) могут некорректно отработать непонятную им директиву. Так же по стандартам файла robots.txt в каждой секции ‘Useragent‘ должна присутствовать хотя бы одна директива ‘Disallow’, поэтому мы и поставили в коде пустую, ничего не запрещающую директиву Disallow:. Мой файл Robots.txt, после добавления приведенного выше кода, стал выглядеть так:

1 User-agent: *

2 Disallow:

3 User-agent: Yandex

  • Disallow:
  • Host: pro-seo.pro

7 Sitemap: https://pro-seo.pro/sitemap.xml.gz

  • Sitemap: https://pro-seo.pro/sitemap.xml.

301 редирект с одного домена на другое доменное имя

У меня, кстати, возникла еще одна необходимость воспользоваться 301 редиректом. Дело в том, что некоторые мои сайты базируются на бесплатном хостинге, который при регистрации предоставляет бесплатное доменное имя третьего уровня. Но я практически сразу покупал для сайтов доменные имена второго уровня, которые затем успешно прикручивал к своим сайтам. Проблема была в том, что сайты оставались доступны и по старым бесплатным доменам третьего уровня (например, gurhan.oxnull.net). Вот для разрешения такой ситуации, я так же прописал в файле .htaccess следующий код:

  • RewriteEngine On
  • RewriteCond %{HTTP_HOST} pro-seo.pro
  • RewriteRule (.*) https://pro-seo.pro/$1 [R=301,L]

 

About the Author

Leave a Reply