перейти к навигации

Адрес с www. или без www.? 02.05.2007

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

Пример – данный блог. Если попробуете зайти на адрес www.danil.625.ru, браузер получит перенаправление 301 на адрес danil.625.ru.

Предпочитаю в большинстве случаев делать это средствами Apache и mod_rewrite.

Вот как можно перенаправлять на адрес с www. (указывается, например, в .htaccess в корне сайта):

<IfModule mod_rewrite.c>
      RewriteEngine On
      RewriteCond %{HTTP_HOST} ^site\.ru [NC]
      RewriteRule ^(.*) http://www.site.ru/$1 [R=301,L]
</IfModule>

Здесь есть небольшая фишка: при запросе адреса site.ru/file.html выполнится переадресация на www.site.ru/file.html (а не просто www.site.ru).

Соответственно, переадресация на адрес без www.:

<IfModule mod_rewrite.c>
      RewriteEngine On
      RewriteCond %{HTTP_HOST} ^www\.site\.ru [NC]
      RewriteRule ^(.*) http://site.ru/$1 [R=301,L]
</IfModule>

Google Bookmarks Digg Reddit del.icio.us Ma.gnolia Technorati Slashdot Yahoo My Web News2.ru БобрДобр.ru RUmarkz Ваау! Memori.ru rucity.com МоёМесто.ru Mister Wong
Tags: ,

Комментарии»

1. Maxime - 02.05.2007

Легче сделать через RedirectMatch и модуль mod_alias :)

2. Huko - 03.05.2007

а чем не нравится деректива ServerAlias в конфиге :) ?
Имхо, она как раз таки очень удобно решает проблему “c www или без” :)

3. Danil - 03.05.2007

Хм… С помощью RedirectMatch тоже хорошо делается :)
Интересно, что из них производительнее в данном случае..

Что касается ServerAlias, то в выражении “c www или без” _или_ – исключающее ;-) т.е. надо либо только с, либо только без. На “неверный” запрос выдаётся 301 на “верный” адрес.
Я использую ServerAlias, чтобы один и тот же виртуальный хост обрабатывал запросы с www и без него и соответствующим образом перенаправлял куда надо.

4. Maxime - 03.05.2007

Используя RedirectMatch не нужен еще один модуль, mod_rewrite, соотвтсвенно больше памяти свободной остаётся. mod_alias всё равно нужен, если используется ScriptAlias.

Используя ServerAlias и “UseCanonicalName On” задача почти решается, по “неправильному” адресу страница-то отдастся, но вот уже ссылки с неё будут идти уже на “правильный” сайт. Из-за этого “почти” лучше всё-таки использовать редирект.

5. .oO0*---nIgHTNiNJa---*0Oo. - 05.05.2007

А вы случайно не знаете как, в броузере набирать адрес главной странчьки?

Сослэшем после адриса или без????! А то я хочю учиться на хакира но не знаю где , учот интернет тармозит и всё плавает иногда повисает а броузер . весь зопечатон наверно демоверсия

И кокой слэш, главнее обратный или примой

P.S. Йа криветко!

6. Antonio - 05.05.2007

http://www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.www.kolesa-auto.ru/

7. Danil - 06.05.2007

Слэш надо прямой использовать :-D

8. jounnyhot - 06.12.2007

Привет всем, млин тут комп не давно сломался и остался я без компа и инета аж на целых 5 дней! Епт такой тошняк был пока не починил, ведь есть все таки зависимость от компьютора как ни крути. Помню раньше не было и не надо )). А еще игры это вообще жесть затягивает. Не давно видел объявление на ряду с лечением табакокурения, алкогализма, в третей строчки было лечение от ИГРОМАНИИ. Во как! Докатились!
Зависимость или свобода конечно все зависит от нас.

9. Batman - 26.09.2008

А через robots.txt нельзя разве сделать?

10. Danil - 27.09.2008

Было бы очень интересно узнать, как это делать через robots.txt

11. Roman - 18.07.2009

Ну вообщем-то с интересом почитал. Спасибо.

12. Иван - 20.01.2010

Для Яндекса можно прописать в robots.txt директиву Host с адресом основного зеркала сайта

13. Юрий - 03.02.2010

Почему-то в обоих случаях добавляется лишний слэш (например http://site.ru// или http://www.site.ru//)
Как от этого избавиться?


ВНИМАНИЕ! Если в вашем комментарии есть хотя бы одна ссылка, он потребует моего подтверждения. Поймите правильно, надоел спам в комментариях.