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

Рубрика: Инструменты вебмастера,Хостинг и домены

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

Редирект на 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 нужно создать в корневом каталоге сайта или открыть на редактирование, если он уже имеется. Этот файл является скрытым и поэтому, чтобы его увидеть нужно зайти в корневую папку вашего сайта на сервере (Как настроить доступ к сайту по FTP с помощью программы FileZilla) и в верхнем меню программы FileZilla выбрать пункт «Сервер» — «Принудительно отображать скрытые файлы».

Включение отображения скрытых файлов в FileZilla

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

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.vash_sait\.ru$ [NC]
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.ktonanovenkogo.ru/karta-sajta, то пользователь будет автоматически перемещен на ту же страницу, только без www – http://ktonanovenkogo.ru/karta-sajta.

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

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

User-agent: Yandex
Disallow:
Host: ktonanovenkogo.ru

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

User-agent: *
Disallow:

User-agent: Yandex
Disallow:
Host: ktonanovenkogo.ru
Sitemap: http://ktonanovenkogo.ru/sitemap.xml.gz
Sitemap: http://ktonanovenkogo.ru/sitemap.xml

Более подробно о создании файла robots.txt вы можете прочитать в этой статье: Улучшаем индексацию сайта поисковиками — Robots.txt для Joomla, SMF, WordPress

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

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

RewriteEngine On
RewriteCond %{HTTP_HOST} gurhan.oxnull.net
RewriteRule (.*) http://caokun.ru/$1 [R=301,L]

Теперь если в браузере набрать http://gurhan.oxnull.net, то произойдет автоматический переброс на сайт http://caokun.ru.

У Евгения Попова вышел новый видекурс Все Технические Моменты Онлайн Бизнеса в Видеоформате, который стоит того, чтобы с ним ознакомиться.

Вы так же можете ознакомиться с другими статьями на эту же тему:

Удачи вам! До скорых встреч на страницах блога KtoNaNovenkogo.ru

Шаблоны Сайтов
Поиск:
Робот считает, что Вам это тоже может быть интересно:
Очень обяжете, если воспользуетесь этим блоком кнопок:
RSS
Рубрика : Инструменты вебмастера,Хостинг и домены
Наверх

Комментарии
10-10-2009 в 22:03

Спасибо огромное — ваша статья очень помогла!!! =)

Нина

14-10-2009 в 11:22

Я на первых парах пробовал сделать редирект, но после этого сайт вовсе не отображался, как с приставкой, так и без, поэтому вернул пустой .htaccess. Наверное я что-то делал не так и сейчас смогу разобраться. Быть может поможет, спасибо!

Ассасин

22-10-2009 в 10:56

Полезная статья — надо будет обязательно сделать на своем блоге.

Хотя вот проблемка — делал этот редирект на одном своем проекте изаметил что онс стал после этого хуже индексироваться — убрал все вернулось обратно. может из за того что в robots.txt не указал для яндекса хост?

Игорь

22-10-2009 в 11:26

Игорь, если получилось так, что вы выбрали в виде главного зеркала не тот вариант, что выбрал Яндекс, а в роботе для Яндекса это явно не указали, то в этой ситуации может быть вообще прекращение индексации вашего сайта Яндексом. Его робота будет перекидывать с основного для Яндекса зеркала на второстепенное, которое он, по алгоритму его работы, индексировать не будет. =)

Дмитрий

29-10-2009 в 20:28

Спасиба! =)

Max

3-12-2009 в 23:25

Скажите а куда именно вставлять этот код? в конец, в начало или между какимто кодом?

# -FrontPage-

# BEGIN WPSuperCache

# END WPSuperCache

# BEGIN WordPress

# END WordPress

Nikita

4-12-2009 в 11:43

Nikita: в принципе, не так важно в каком месте файла .htaccess будет прописан данный код.

Дмитрий

4-12-2009 в 13:20

Здравствуйте!

Спасибо за полезную статью. Сам недавно сделал 301 редирект, только не между с www и без www, а со старого доменного имени на новое. Однако я не стал прописывать в robots новый домен, потому что считал, что робот Яндекса файл robots на старом домене никогда не прочитает из-за того, что всегда будет перекидываться на robots, лежащий по новому адресу. Как Вы считаете, прав ли я? Сейчас страницы с нового домена постепенно попадают в индекс Яндекса, старые выходят из него. Вот только позиции новых страниц далеко не такие, как старых.

Денис

5-12-2009 в 0:00

Немного н по теме вопрос, но раз уж тут лазили в .htaacess

У меня такой вопрос: у меня на сайте иногда появляется ошибка в которой пишется, что нет доступа к файлу refresh_informers.php и в тоже время пропадает возможность изменять все файлы в вордпресе через админку. хотя доступ стоит 7.

сайт www.victoryinvestors.com

Nikita

5-12-2009 в 14:25

Денис: мне пока вплотную не приходилось заниматься переносом сайта на другой домен с сохранением пузомерок. Есть неплохой материал по этой теме у Димокса (знаете, наверное). Он это на своем опыте проверил и написал цикл статей. Вот ссылка на результирующую статью — dimox.name/speed-comparis...icing-by-yandex/

Все это я прочитал, но т.к. на практике не применял, то оно не отложилось, что именно и как лучше будет сделать. Почитайте сами, там вроде все доступно и понятно описано =)

Nikita: к сожалению, ничего путного не могу сказать по вашему вопросу, странная ситуация, на мой взгляд. =-O

Дмитрий

6-12-2009 в 18:54

Здравствуйте.

Спасибо за полезную статью.Извините что отвлекаю и трачу ваше время на такую мелочь но все же не могли бы прописать полный путь к файлу htaccess на пример ваш путь к этому файлу

Денис

6-12-2009 в 20:43

Денис: он лежит в корне сайта. У меня путь получается такой:

public_html/.htaccess

Если вы его не видите, то в FileZila нужно в верхнем меню выбрать пункт «Сервер» — «Принудительно отображать скрытые файлы».

Про работу с файлами сайта по FTP можете почитать здесь: Как получить доступ к сайту по FTP с помощью программы FileZilla

Дмитрий

6-12-2009 в 20:48

В корне, где index.html или index.php и т.д.

Денис

6-12-2009 в 20:56

Спасибо вам Дмитрий второй раз к вам обращаюсь и оба раза вы мне помогали.

Успехов вам

Денис

8-12-2009 в 8:47

Дмитрий, спасибо за ссылку на статью Димокса. Почитал, интересно.

Денис

15-01-2010 в 10:35

Отличная статья, вмиг все удолось поправить и теперь все отлично работает.

httpacces, FreeBSD, Postfix, SQUID, NAT, Firewall, все это я изучаю вторую неделю, вродебы результаты уже не плохие, желаю вам успехов, А ваша статья мне очень помогла.

sys-sanya.ru

18-01-2010 в 0:29

Здравствуйте, спасибо за статью. Но у меня этот редирект работает таким образом, что с www.домен.ru/папка перекидывает на домен.ru, а не на домен.ru/папка. В этом, вероятно, виноваты настройки сервера?

Евгений

23-01-2010 в 12:49

Спасибо за отличный цикл статей!

У меня вопрос такой. Имеет ли принципиальное значение, какой редирект прописывать в .htaccess: с домена с www на домен без www или же наоборот? И зависит ли это от того, какой Host прописан в robots.txt: опять же — с www или без www? Надеюсь, понятно изложил вопрос )) Спасибо заранее!

Святослав

23-01-2010 в 13:47

Святослав: какое именно зеркало вы выберете главным не важно (с WWW или без WWW), но именно на это зеркало должен быть сделан редирект и именно оно должно быть прописано в Host. Иначе могут возникнуть проблемы с индексацией сайта Яндексом.

Главное зеркало в директиве Host вы укажете, допустим без WWW, а редирект сделаете на зеркало с WWW. В этом случае при заходе на ваш сайт робота Яндекса будет перебрасывать на не главное зеркало (с WWW), которое Яндекс индексировать не будет (т.к. в Host оно не прописано главным). Индексация сайта в этом случае вообще Яндексом осуществляться не будет.

Дмитрий

23-01-2010 в 15:28

Огромное спасибо, Дмитрий!

Святослав

1-04-2010 в 0:33

Спасибо за инфу, у меня вопрос если я сделал основным имя без www а Гогл индексировал сайт с www как будет развиватся ситуация? И что лутьше сделать если яша видит без ввв а гогл с ввв.

Костя

5-04-2010 в 23:33

Костя: чего то, как то запутано получается. Боюсь сам запутаться и вас запутать. Надо просто думать логически, какой вариант будет работать, а какой приведет к проблемам с индексацией вашего сайта одним из поисковиков.

Дмитрий

8-04-2010 в 12:53

Спасибо. Наконец-то разобрался с этим 301 редиректом.

Владимир

9-04-2010 в 12:28

Здравствуйте! Блог — шикарный, за что Вам большое спасибо!

Есть вопрос на счёт редиректа, прочитал — всё понял и добавил код в .htacces.txt

########## Редирект с www на без www

#

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.имя-сайта\.ru$ [NC]

RewriteRule ^(.*)$ vij.имя-сайта/$1 [R=301,L]

#

##########

но если я ввожу в адресной строке www.имя-сайта.ru, меня перебрасывает на www.имя-сайта.ru

то есть редирект не работает, в чём может быть причина?

Виктор

11-04-2010 в 10:18

Виктор говорит, что:

RewriteRule ^(.*)$ vij.имя-сайта/$1 [R=301,L]

вроде как, ошибочка у вас — вместо «http://» у вас написано «vij.». Может из-за этого. Во-вторых файл должен называться не «.htacces.txt», a «.htacces» (без расширения). Так же возможно, что ваш хостер не поддерживает конфигурирование сайта с помощью файла «.htacces»

Дмитрий

11-04-2010 в 12:15

Извиняюсь это я здесь написал не внимательно, а как исправить не нашел.

файл конечно .htaccess (не txt)

вот точный код, что я вставил в него:

########## Редирект с www на без www

#

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.vij\.ru$ [NC]

RewriteRule ^(.*)$ vij.ru/$1 [R=301,L]

#

##########

вроде все верно, но редиректа не происходит, запрос с www — открывает сайт с www, запрос без www — соответственно без...

хостер поддерживает .htaccess (узнавал, говорят все должно работать)

Виктор

11-04-2010 в 12:19

Виктор говорит, что:

RewriteRule ^(.*)$ vij.ru/$1 [R=301,L]

вот опять, «http://» там есть, просто визуальный ред. его в ссылку превратил

Виктор

11-04-2010 в 12:25

Ура! работает )

похоже эти решетки «#» не просто так, я думал они просто строки комментируют, вставил код без них (и в самом начале файла) и все сразу же стало нормально.

В общем сам дурак )извините за мусор, можете стереть все что я тут понаписал.

Виктор

21-07-2010 в 17:28

Вот вопрос: если склеить забаненый домен яндексом к нормальному домену, какие последствия? будет ли бан перенесен на новый домен?

Юрий

21-07-2010 в 19:05

Юрий: нет такого опыта. Если сделаете, то сообщите обязательно о результатах (если не в лом).

Дмитрий

21-07-2010 в 21:27

Тогда этим и займусь, всегда любил экспериментировать...результаты извещу

Юрий

26-07-2010 в 15:47

Есть ещё один вопрос. Поставил редирект и host на главный домен. Нужно ли в яндекс вебмастере удалить неправильное главное зеркало с www? Или оно само изменится?

Денис

3-08-2010 в 21:52

В тексте статьи находится ошибка: «соответственноЮ». Явно подразумевается «соответственно,».

Agor71

3-08-2010 в 23:03

Agor71: спасибо за замечание, поправил.

Дмитрий

9-08-2010 в 16:48

Помогите пожалуйста решить следующий вопрос: поменял доменное имя и CMS (контент не изменял), через 301 редирект получится ли сделать перенаправление со всех страниц старого доменного имени на например newdomain.ru? Или может посоветуете что нибудь другое, или ссылочку где можно почитать?

Заранее спасибо.

Илья

15-08-2010 в 19:14

Подскажите, плиз, как определить, удачно или нет прошел редирект. на WP у меня редирект делает плагин, вот не знаю, есть ли смысл добавлять в .haccess строчки редиректа. Потому что при вводе ссылки с www он автоматом перебрасывает меня на сайт уже без www. Я так понимаю, это говорит об удачном редиректе. А вот 2 других сай

ivolga

15-08-2010 в 19:16

Извините, прошлый пост был не целиком. Так вот, я прописываю для сайтов на Джумле оба файлика, как указано у вас, но при вводе адреса с www и без www ничего не происходит, то есть url разные. Что делать и где копать?

ivolga

17-08-2010 в 15:12

Пожалуй остановлюсь на «без www».

PeaceDoorBall

7-09-2010 в 21:41

Спасибо за статью. Сейчас настрою редирект и себе, руководствуясь вашими указаниями.

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

Возник вопрос, если у меня есть бесплатный блог на домене третьего уровня, мне нужно редактировать его .htaccess чтобы делать редирект на свой сайт второго уровня?

Дело в том, что это бесплатный хостинг (третьего уровня) и его

.htaccess я редактировать не могу никак. Нет такой возможности.

Есть ли какой-либо другой способ?

Олег Дорожко

13-09-2010 в 22:56

Добрый день. Искал в разных блогах и везде по разному говорят. У меня сайт http://www.bipgroup.ru/. Яндекс считает главным вариант с www, так как в robots.txt я в своё время прописал именно так. Совершенно про это забыв начал продвигать сайт, составляя статьи и анкоры со ссылками без www. Сегодня меня как молнией прошибло, вдруг вспоминаю про эти варианты с www и без. Теперь меня мучает вопрос: есть ли разница на какой сайт ставить ссылки, с www или без www? И ещё. Не относятся ли поисковики к сайту с www как к домену третьего уровня?

Благодарю, если подскажите.

Damian

7-11-2010 в 19:30

здравствуйте

скажите пожалуйста-как сделать для одного из двух доменов переадресацию,с домена на тотже домен но на конкретную страницу?

Игорь

24-11-2010 в 18:21

Добрый день, Дмитрий! Огромное вам спасибо за статью. Но у меня возникли вопросы, не могли бы вы ответить на них. Я меня есть сайт на joomla, к моему большому сожалению файл robots с директивой host был составлен слишком поздно. Когда Яша его уже проиндексировал и проиндексировал он его с www, тогда как я везде прописывала во всех каталогах без www. Но написав Платону письмо по поводу со всем другой проблемы мне пришло письмо что у меня есть зеркало сайта, что Яндекс считает основным сайтом домен с www. Я сразу же переписала host и файл .htaccess, но ничего не происходит. Затем совсем недавно запустила в сеть блог на wordpress и у него сразу же в адресной строке выходит адрес с www. Файл robots прописала тоже с www, но вот что делать с файлом.htaccess не понимаю. Его необходимо изменять или нет? И как теперь мне исправить редирикт для joomla

Ledi_in_red

24-11-2010 в 22:27

Хочу добавить .htaccess у меня на сайте был не пустой. По этому ваша инструкция сразу не сработала (редирект с «без» www на «с» www).

Но поковырявшись надо было добавить только 2 строчки:

RewriteCond %{HTTP_HOST} ^moj_sajt\.ru$ [NC]
RewriteRule ^(.*)$ www.moj_sajt.ru/$1 [R=301,L]

Так-как опции:

Options +FollowSymLinks
RewriteEngine On

Были уже включены в фаил.

Вот результат:

##
# @version $Id: htaccess.txt 14401 2010-01-26 14:10:00Z louis $
# @package Joomla
# @copyright Copyright (C) 2005 - 2010 Open Source Matters. All rights reserved.
# @license www.gnu.org/copyleft/gpl.html GNU/GPL
# Joomla! is Free Software
##


#####################################################
#  READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE
#
# The line just below this section: 'Options +FollowSymLinks' may cause problems
# with some server configurations.  It is required for use of mod_rewrite, but may already
# be set by your server administrator in a way that dissallows changing it in
# your .htaccess file.  If using it causes your server to error out, comment it out (add # to
# beginning of line), reload your site in your browser and test your sef url's.  If they work,
# it has been set by your server administrator and you do not need it set here.
#
#####################################################

##  Can be commented out if causes errors, see notes above.
Options +FollowSymLinks

#
#  mod_rewrite in use

RewriteEngine On
RewriteCond %{HTTP_HOST} ^moj_sajt\.ru$ [NC]
RewriteRule ^(.*)$ www.moj_sajt.ru/$1 [R=301,L]
########## Begin - Rewrite rules to block out some common 
+ ещё куча инфы.............

Спасибо за статью...

Александр

29-11-2010 в 9:40

Как прописывать редирект в домене рф?

Ал

29-11-2010 в 9:43

как прписывать редирект в домене рф?

Прописываю так:

RewriteCond %{HTTP_HOST} ^сайт\.рф$ [NC]
RewriteRule ^(.*)$ www.сайт.рф/$1 [R=301,L]

редиректа на без www не происходит

как установить редирект на домен рф?

al

29-11-2010 в 12:20

Илья: посмотрите здесь по теме смены домена и применения для этой цели 301 редиректа

Олег Дорожко: да, настраивать 301 редирект нужно будет именно в файле .htaccess того сайта, с которого вы переехали, чтобы посетителей и поисковых роботов перебрасывало на новый домен. Вроде бы так, если не напутал.

Damian: если склеите зеркала с www и без www с помощью 301 редиректа, то будет уже не важно использовался ли в обратных ссылках префикс www или не использовался. Сайт с www доменом третьего уровня считаться не будет, просто www это некий рудимент, оставшийся от прошлых времен.

Игорь: думаю, что по аналогии с описанным в статье или же с помощью каких-либо расширений для вашей CMS.

Ledi_in_red: извините, но боюсь своими советами вас запутать, ибо сам не очень понял ситуацию.

Александр: спасибо за дополнение.

al: самому было бы интересно узнать о том, как сделать 301 редирект для склейки домена РФ с www и без www. Если узнаю, то отпишусь.

Дмитрий

7-12-2010 в 14:31

У меня сайт на вордпрес и в стандарте там такой код в htaccess

# BEGIN WordPress

RewriteEngine On

RewriteBase /

RewriteRule ^index\.php$ — [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]

# END WordPress

Если прописываю редирект c www на без www, сайт отказывается работать, говорит что циклическое перенаправление.

Может стандартный вообще стереть и поставить только редирект:

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.vash_sait\.ru$ [NC]

RewriteRule ^(.*)$ vash_sait.ru/$1 [R=301,L]

как быть?

Михаил

19-12-2010 в 1:33

Спасибо за статью!

Nychos

23-12-2010 в 12:30

Спасибо за статью

Вручную отредактировать файл httacess не получилось-сайт выдавал ошибку.

Получилось через Cpanel.

Александр

3-01-2011 в 23:53

Хочу сделать редирект с www.ИмяМоегоСайта.oxnull.net на ИмяМоегоСайта.oxnull.net

Прописываю такие строки в файле .htaccess

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.ИмяМоегоСайта.oxnull.net$ [NC]

RewriteRule ^(.*)$ ИмяМоегоСайта.oxnull.net/$1 [R=301,L]

В итоге при наборе в браузере адреса www.ИмяМоегоСайта.oxnull.net ничего на происходит.

Вопрос: Что делаю не так?

И еще — какие права доступа должны быть на файл .htaccess?

Specagent

24-01-2011 в 18:54

Вопрос по примеру в статье. Почему в строке 3 перед ru точку надо экранировать, а в той же строке после www нет?

И еще вопрос по основам. Почему в подстановке используется группа $1, а не $0? Проверял на своем примере содержимое у них одинаковое, но по описанию модуля нумерация групп с 0 начинается и так как в шаблоне у нас всего одна группировка, номер ее должен быть $0.

1 Options +FollowSymLinks

2 RewriteEngine On

3 RewriteCond %{HTTP_HOST} ^www.vash_sait\.ru$ [NC]

4 RewriteRule ^(.*)$ vash_sait.ru/$1 [R=301,L]

Alex

19-02-2011 в 22:25

А возможно ли сделать редирект в .htaccess с www на без для домена в зоне .рф?

например

www.сайт.рф редирект на сайт.рф

Андрей

9-03-2011 в 18:40

спасибо за статью! Но когда я пропробовала сделать это:

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.vash_sait\.ru$ [NC]

RewriteRule ^(.*)$ vash_sait.ru/$1 [R=301,L]

конечно же вставив адреса своего сайта, то вышло так:

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, webmaster@u-sovenka.ru and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Apache/2.2.14 (Ubuntu) Server at u-sovenka.ru Port 80

Что я могла сделать неправильно?

Юлия

11-03-2011 в 15:49

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

Человек рассматривающий доменное имя как имя(адрес) сервера или даже группы серверов, прекрасно понимает необходимость тематических/технических субдоменов www, mail, ftp.

В целом спасибо за ваши статьи, много полезного.© Ginom-Home

Ginom

13-03-2011 в 0:55

Для чего необходимо ставить обратную наклонную черту перед точкой (.) в строке RewriteCond ведь работает и без неё?

Дмитрий

14-03-2011 в 0:05

Михаил: Михаил, Вам удалось решить проблему? Столкнулся с тем же и не знаю, как быть)))

Дмитрий, а может Вы подскажете как быть в таком случае?

Kilobox

22-03-2011 в 20:13

Здраствуйте, оч хорошая статья. Подскажите, если мой сайт rshop.lg.ua , то как правильно мне оформить эти строки

RewriteCond %{HTTP_HOST} ^www.rshop.lg\.ua$ [NC]

RewriteRule ^(.*)$ rshop.lg.ua/$1 [R=301,L]

И ещё, joomla создала файл .htaccess с расширением txt, просто изменить расширение?

Сергей

22-03-2011 в 23:09

RewriteCond %{HTTP_HOST} ^www.rshop.lg\.ua$ [NC]

RewriteRule ^(.*)$ rshop.lg.ua/$1 [R=301,L]

Я правильно записал эти 2 строчки для сайта

rshop.lg.ua

Не уверен где именно ставить \ в этой строке:

RewriteCond %{HTTP_HOST} ^www.rshop.lg\.ua$ [NC]

Сергей

24-03-2011 в 12:49

Читаю Ваш блог давно! Спасибо за очень интересные и позновательные статьи!

Как Вы считаете, так правильно делать редирект для домена в зоне РФ, что бы он был без www?

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www\.поздравления-с-юбилеем\.рф$ [NC]

RewriteRule ^(.*)$ поздравления- ...леем.рф/$1 [R=301,L]

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.xn-----6kcgckjdalpd7agrhkrw1a8ysa.xn--p1ai$ [NC]

RewriteRule ^(.*)$ xn-----6kcgckjdalpd7agrhkrw1a8ysa.xn--p1ai/$1 [R=301,L]

в robots.txt сделано так:

Host: xn-----6kcgckjdalpd7agrhkrw1a8ysa.xn--p1ai

Перепробовано много способов — работает только этот, может я и не прав! Только одно не могу понять, почему в Google всё равно появляются страницы с www?

На одном из сайтов я сделал подобное, но вдруг Яндекс выкинул страницы из поиска и сделал сайт с www, хотя в robots.txt в параметре Host сайт был указан без www.

Поэтому я засомневался в правильности моих действий.

Я задал вопрос в панели Яндекс вебмастер:

Почему сайт погода-в-египте.рф стал вдруг с www?

Вот что мне ответили в первый раз:

1. На момент последнего захода робота-зеркальщика явных указаний на желаемое главное зеркало не было. В такой ситуации робот был вынужден выбирать главное зеркало в автоматическом режиме.

2. В Вашем случае группа зеркал уже сформирована, поэтому устанавливать перенаправление я Вам не рекомендую. Получится, что робот будет удалять страницы главного зеркала, так как они перенаправляют, а цель перенаправления в поиск не попадет, так как целью является неглавное зеркало, запрещенное к индексированию.

Пожалуйста, воспользуйтесь для переклейки зеркал директивой Host и снимите перенаправление. В нашей Помощи Вы можете найти подробную информацию по данному поводу: help.yandex.ru/webmaster/?id=996567#996574

Хочу также заметить, что процесс переклейки зеркал в среднем занимает 4–6 недель, ускорить его, к сожалению, нельзя.

Вот что ответили во второй раз:

В robots.txt настройки верные для случая, если главным зеркалом Вы хотите сделать сайт с префиксом «www». И, как я уже говорил, существующий редирект следует снять. Просто закомментируйте эти строки в файле htaccess, поставив перед каждой из них символ #. После чего дождитесь переклейки зеркал, робот сменит текущее главное зеркало в соответствии с указаниями в файле robots.txt.

Подскажите, как правильно сделать? или мой вариант вверху правильный? Или вообще всё убрать и не парится?

Stotland

22-04-2011 в 10:13

Здравствуйте!

Уже не впервые пользуюсь этой вашей статьей для настройки своих доменов, спасибо огромное! Но впервые — для WordPress.

Скажите, пожалуйста, куда именно мне добавить код для 301 редиректа, если в .htaccess уже содержится следующий код (не помню, откуда):

# BEGIN WordPress

RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]

# END WordPress

Заранее спасибо!

Святослав

22-04-2011 в 11:12

Здравствуйте.

У меня возникла проблема. Прописал 301 Редирект с сайта www.boberz.ru на boberz.ru через файл Httacess

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.boberz\.ru$ [NC]

RewriteRule ^(.*)$ boberz.ru/$1 [R=301,L]

Но почему то редирект делается только с главной страницы. А вот если например зайти на страницу www.boberz.ru/help/kak-po... -videokartu.html редиректа не будет на boberz.ru/help/kak-pochinit-videokartu.html. Пожалуйста, помогите мне разобраться с моей проблемой.

Андрей

23-05-2011 в 16:57

Сделал редирект 301. Все получилось, только вот теперь почему — то не могу войти в панель блога и нет возможности оставлять комментарии? Что это может быть?

Tramp

14-06-2011 в 11:21

попробовал,сайт прекрасно работает как с www так и без. видимо хостер сделал своё дело.

levko

7-07-2011 в 16:34

Скажите, изменения .htaccess вступают в силу сразу же?

все изменила «с WWW на без WWW» , но без WWW выдается Not Found.

Дарра

9-07-2011 в 3:15

Есть сайт на с несколькими доменами в разных доменных зонах, яндекс определили главным доменом зону ру, а мне нужно ком.юа. Стоит ли применять здесь 301 редирект или нет? Дело в том что все домены — зеркала((

В добавок еще и ссылок куча на ненужный домен.

Serg

26-07-2011 в 0:14

Скажите пожалуйста, я при установке 301го редир. ошибся и в коде допустил помарочку, так сказать, когда писал домен, руками, то сам дописал .ru и получилось 2 раза ru — www.site.ru.ru:

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

Я, не заметив ошибки — начал пробовать работоспособность редиректа. И при попытке ввести без WWW (ожидая что меня, по идее, перебросит автоматом на адрес с WWW) — мне выдало ошибку в виде:

Sorry, the Server failed to retrieve the requested data.

unknown user account.

Я сразу и не понял в чем прикол, но потом присмотревшись в .htacces увидел ту чёртову помарку(второй раз .ru). В общем изменил в .htacces на:

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

НО снова, при моей попытке проверки работоспособности редиректа, перебрасывает на страницу, в которой:

Sorry, the Server failed to retrieve the requested data.

unknown user account.

И в адресной строке браузера остаётся www.site.ru.ru

Я так понимаю .htacces еще не вступил в силу, после исправления собственной помарки? Как скоро .htacces вступает в силу после его обновления??? или тут что-то другое?

Sasha

3-08-2011 в 20:20

сделал редирект

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.device-avto\.ru$ [NC]

RewriteRule ^(.*)$ device-avto.ru/$1 [R=301,L]

Но с блогом косяк. когда ставишь ввв перед блогом юрл вылазит непонятный((

димон

10-08-2011 в 13:30

Вопрос вот в чем.

Во-первых, склейку домена через директиву нost и редирект в .htaccess надо делать одновременно или дождаться пока yandex склеит домен через host, а уже потом делать редирект в .htaccess? И если да, то как определить, склеил ли yandex домен или нет?

Во-вторых: какие операции для склейки доменов нужно делать для google или редиректа в .htaccess достаточно?

В-третьих: вопрос по infobox.ru (надеюсь это имеет отношение к данной статье). В панели настройки хостинга предлагается прописать главное имя сайта (как правила без www) и алиас (как правило с www). Имеет ли значение (для поисковых систем) где какое имя прописывать? т.е. я хочу, чтобы главным было имя с www, должен ли я в настройках хостинга указать его как главное или это не принципиально?

Надеюсь, спросил не ерунду)))

msweb

17-08-2011 в 18:46

У меня сайт на Joomla 1.5.23 и компонент shsef404, делаю по инструкции в статье и при заходе на сайт мне пишет какую-то хрень, типа сайт перемещен сюда и ссылку. Там тоже самое. Что делать?

Виталий

29-08-2011 в 12:08

Дмитрий, помогите!

Я указала в роботс.ткст что главный сайт без www

В хтаксес сделала редирект с www на без www

Но теперь сайт перестал отображаться вообще!

Internal Server Error

Почему? Как это исправить?

Екатерина

29-08-2011 в 12:36

Екатерина: скорее всего проблема с .htaccess. Верните все к начальным условиям в этом файле и обратитесь к своему хостеру за консультацией, ибо сервера могут иметь различные и в том числе специфические настройки. Удачи.

Дмитрий

29-08-2011 в 12:42

Спасибо, Дмитрий! Да, проблема решена, оказывается править в блокноте нежелательно, т.к добавляются какие-то непечатные символы.

Вопрос еще такой, правильно ли так написать?

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.vash_sait\.ru$ [NC]

RewriteCond %{HTTP_HOST} ^www.vash_sait\.ru/index.php$ [NC]

RewriteRule ^(.*)$ vash_sait.ru/$1 [R=301,L]

Чтобы редирект был еще и со страницы с index.php?

Екатерина

30-09-2011 в 19:51

RewriteEngine On

RewriteCond %{HTTP_HOST} gurhan.oxnull.net

RewriteRule (.*) caokun.ru/$1 [R=301,L]

____________________________________________________

у меня тоже бесплатный хостинг, но почему-то ни один вариант не помогает сделать редирект на домен.ру :(

я сразу прописал новый домен (домен.ру) для 'Адрес WordPress (URL)' и 'Адрес сайта (URL)'

насколько это правильно, вешь сам ВордПресс стоит на старом домене и нужен ли теперь редирект, если я буду сразу раскручивать домен.ру?

Михаил1

8-10-2011 в 7:36

Вот это я спросил у Платонов.

[quote]

В robots.txt прописал Host: www.мой сайт.

Теперь «http://мой сайт» признан зеркалом «http://www.мой сайт».

Хочу сделать редирект с «http://мой сайт» на «http://www.мой сайт», т.к это 1 и тот же сайт.

Поощряются ли Яндексом такие действия?

[/quote]

Вот ответ. Вывод: рисковать не буду, редирект не буду ставить. Тьфу-тьфу-тьфу и без этого всё ОК.

Установленный Вами редирект в конечном итоге приведет к смене главного зеркала. Однако, при его использовании следует понимать, что робот не будет индексировать страницы текущего главного зеркала, а будет переходить по редиректу. В свою очередь, цель редиректа также не будет индексироваться, поскольку является неглавным зеркалом, которое в поиске не участвует. Поэтому, если Вы хотите, чтобы до переклейки зеркал Ваш сайт мог индексироваться по адресу текущего главного зеркала, редирект лучше не устанавливать. Для смены главного зеркала лучше использовать только директиву Host в файлах robots.txt всех зеркал. Этого будет вполне достаточно, при этом Вы избежите проблем с индексированием сайта из-за перенаправления на неглавное зеркало.

Обратите внимание, процесс переклейки зеркал любым из указанных способов происходит автоматически и может занимать до 4-6 недель, ускорить его, к сожалению, нельзя.

YandexBot

15-10-2011 в 10:08

Доброго времени суток.

Я начал изучать Joomla 1.7.1 одну неделю назад.

И столкнулся с вопросом, который для себя не прояснил ни в статьях, ни в комментах, а именно:

Для начала, естественно, скачал Денвер и решил поучиться писать сайтики на своей машине. Нашел в интернете 2 руководства по установке Денвера и Joomla, разница заключалась в размещении папки моего, будущего, сайта в Денвер, а именно:

1: d:\Denwer\home\mysite.ru\www\Joomla (Такой вариант я выбрал для себя и после перезагрузки Денвера, зайдя по localhost, увидел свой сайт «mysite.ru» в списке разрешонных и приступил к установке Joomla).

2: d:\Denwer\home\localhost\www\mysite.ru\Joomla (В этом случае после перезагрузки Денвера, зайдя по localhost, не увидел свой сайт «mysite.ru» в списке разрешонных.)

Данному вопросу не придал значения т.к. по 1-у варианту псё получилось и начад работать.

Однако прочитав статью о файле «robots.txt» ktonanovenkogo.ru/seo/ulu...t-2.html#metarob

и о файле «htaccess.txt» ktonanovenkogo.ru/vokrug- ...vaniya.html#Host

задумался так, как же правильно прописать директиву host для яндекса, как правильно описать 301 редирект, имхо не знаю КАК узнать основное зеркало моего сайта с WWW ИЛИ БЕЗ НЕГО? И зависти ли это от выбора директории моего сайта в Денвер(2 способа описаны выше)?

Буду очень благодарен, если проясните этот вопрос.

Евгений

27-10-2011 в 21:18

2al

хотя уже наверное не актуально, вот тут lamp-dev.ru/blogovodstvo/sklejka-domenov/ я описал как редирект с кириллическими адресами, у меня по крайней мере получилось

Andrey

13-11-2011 в 14:41

Здравствуйте Дмитрий! для варианта редиректа с www на без www:

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.netvirusu\.net$ [NC]

RewriteRule ^(.*)$ netvirusu.net/$1 [R=301,L]

для сайта netvirusu.net правильно будет?

Эдуард

13-11-2011 в 15:00

И еще вопрос у меня в файле .htaccess запись начинается # BEGIN WordPress и заканчивается # END WordPress. для редиректа обязательно помещать все внутрь этого или нет? Или # BEGIN WordPress и # END WordPress можно вообще удалить?

извини за такой ламерский вопрос) просто не хочется навредить сайту...

Эдуард

16-11-2011 в 15:47

Добрый день! Никак не могу осуществить редирект на joomla.

Как сделать редирект, например, со страницы _http://мой сайт/index.php?option=com_content&view=article&id=73&Itemid=128 на страницу _http://мой сайт/index.php?option=com_content&view=article&id=73&Itemid=160. Разница только в последних числах. Всю голову сломал, буду благодарен за помощь.

Виталий

25-11-2011 в 23:18

Мой сайт находится на wordpress, в .htaccess я ничего на менял домен сам переключается на без www, почему так?

airat333

31-12-2011 в 2:14

Сайт на Joomla работает у хостера с 301 перенаправлением. Переношу сайт к другому хостеру, но пока не прописываю его NS. Работаю с сайтом через файл hosts (ip_сервера имя_домена). Убираю 301 из .htaccess. После всего этого, редирект всё равно срабатывает… Автор, может Вы знаете как устранить проблему?

Сергей

5-01-2012 в 21:37

Спасибо за БЛОГ!

Сделал ред. 301 :-) )))))

P.S.

Только в статье исправьте «...дописываем следующие строки...»

на «...прописываем следующие строки...»

1.Я дописал код (в конец файла) — не сработало (файл у меня не пустой)

2. Прописал в начале файла... и УРА!!! ЗАРАБОТАЛО!!!

С уважением,

school9.org.ua

Александр

17-01-2012 в 8:51

Добрый день.

Благодарю за статью. И есть вопрос если позволите.

Сайт продвигался с www. И ссылки в статьях и т.д. на сторонних ресурсах с www. Главное зеркало признано Яндексом без www.

Если сейчас я сделаю главным сайтом без www, не упададут ли позиции сайта из-за того, что странички продвигались с www и не уменьшится ли ТИЦ сайта?

С уважением к Вам.

Александр

22-01-2012 в 19:18

RewriteEngine On

RewriteCond %{HTTP_HOST} такой-то.ру

RewriteRule (.*) друго-то.ру/$1 [R=301,L]----- по этому модулю явствует что у него 2 сайта.Тогда оплата происходит за эти 2 сайта

footstep

25-01-2012 в 19:50

RewriteEngine On
RewriteCond %{HTTP_HOST} такой-то.ру
RewriteRule (.*) друго-то.ру/$1 [R=301,L]----- по этому модулю явствует что у него 2 сайта.Тогда оплата происходит за эти 2 сайта 
не вижу комментария

footstep

8-02-2012 в 20:28

Пожалуйста.напишите как переместить страницу на сайте в другое место чтобы не потерять посетителей и трафик?

Например страница- сайт/каталог/интересная страница

а нужно

сайт/каталог новый/интересная страница?

как прописать 301 редирект?

или может быть воспользоваться тегом Каноникал?

сайт- на Джумле

Спасибо

алексей

29-02-2012 в 9:05

а при 301 редиректе с blogspot на другое доменное имя на вордпресс реально сохранить пузомерки?

Оксана

17-04-2012 в 13:42

Настроил редирект 301 с www на без www Код тупо скопировал с этой статьи только прописал имя своего сайта. Всё казалось бы работает НО если к url ktonanovenkogo.ru/vokrug- ...skleivaniya.html дописать www то редирект возвращает на без www, а у меня получается что внутренняя страница с www возвращает на дубль главной без www но с приставкой index.php У меня вопрос: это я что то не так сделал, в статье раскрывается только вопрос редиректа главной страницы. Если второе то тогда как настроить редирект с внутренних страниц с www на такие же без www? Буду очень признателен.

Алексей

18-04-2012 в 18:38

Здравствуйте. У меня такой вопрос: нужно ли ставить 301-й редирект на зеркала своего сайта, сделанные хостером. Например, есть основной сайт site.ru, но он ещё доступен по адресу site.ru.xsph.ru (это у спринтхоста такая штука).

Максим

Написать

(обязательно)

(обязательно)

Ваш комментарий
Заключайте PHP и другой код в теги [php][/php]

Это не спам.

Подписаться без комментирования