Как создать 301-й редирект?
Рано или поздно, каждый веб-мастер, SEO оптимизатор приходит к этому вопросу. Причиной тому может быть вопрос возникновения дубля страниц и/или вопрос определения основного зеркала сайта и т.д.
Однажды и я задал себе этот вопрос, просмотрел много сайтов из SERPа по данному запросу и увидел огромное множество статей на эту тему. Прочитав несколько, мне показалось, что я понял как создать 301 редирект и принялся воплощать его в жизнь. И тут я столкнулся со сплошными неудачами. У меня ничего не получалось, следуя подробным инструкциям я получал то внутреннюю ошибку сервера, то белый экран, то бесконечный редирект...
Вариантов создания 301 редиректа существует довольно много - через директиву RedirectMatch, через ngix, через mod_rewrite и ещё много чего.
Но PHP программист из меня никакой (думаю, что многие начинающие джумловоды имеют весьма поверхностное представление о том, что такое PHP), поэтому я занялся поиском доступного и понятного решения этой задачи.
Ответ был найден довольно простой. Я создал 301 редирект с помощью файла .htaccess
Самый лучший вариант создания 301-го редиректа на основное зеркало сайта делается так:
Находим строку - RewriteEngine On и под ней прописываем следующий код (вместо site.com поставьте Ваше доменное имя)
В данном случае, при попытке ввести УРЛ сайта с www, сайт будет отображаться в браузерной строке без него. Если после внесения изменений в файл .htaccess у Вас сайт отображается и с www, значит Вы что-то сделали неправильно.
RewriteCond %{HTTP_HOST} ^www.site.com$
RewriteRule ^(.*)$ http://site.com/$1 [NC,R=301,L]
Если у Вас в качестве главной страницы отображается домен с папкой (как будет описано чуть ниже), то после того как нашли строку RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] нужно вручную прописать правило безусловного редиректа на доменное имя сайта путём добавления следующей строки, как показано в рисунке ниже.
Кстати, данный способ помогает избавиться от другого вида дублей страниц. Это будет интересно для тех, у кого есть интернет магазин на Joomla VirtueMart, поскольку затрагивается вопрос внутренней оптимизации интернет-магазина. Так вот, допустим главной страницей Вы решили сделать вывод главных категорий товаров. В таком случае, главная может быть в виде основного домена site.com и site.com/shop.html Повторять о том, насколько важно избавиться от такого дубля я не буду. Просто, ниже приведу пример решения такой проблемы.
Редактировать файл .htaccess лучше всего редактором Notepad++
Таким вот образом я ухожу от дублей страниц, определяю основное зеркало сайта и избегаю вечных редиректов, по крайней мере на сайтах созданных с помощью CMS Joomla 1.5
Надеюсь, что данная статья была полезна и объясняет как создать 301 редирект.
Комментарии
Разобрался, все отлично работает.
Проблема состояла в том, что надо было вставить в обеих стоках а я поменял только в первой и он начал перенаправлять на существующий сайт www.site.com, потом поменял и во 2-ой строке и все по прежнему, переходит на www.site.com.
Решение до смешного простое: нужно почистить КЭШ вашего браузера
Может для профессианала это просто и очевидно а для новичка и любителя полезно знать что кэш после подобных манипуляций надо чистить.
P.S. Большое спасибо все работает
НОВИЧКАМ: ничего не меняйте а то будете набирать www.свой_сайт.ru и переходить на реальный www.site.com
Рано или поздно, каждому владельцу сайта приходит время задуматься о SEO. А в связи с этим и возникает вопрос - как создать 301 редирект
Спасибо! Все Ваши статьи очень интересны и полезны, особенно учитывая что я 2,5 года работал именно на Joomle и долгое время не задавался вопросом SEO.
RSS лента комментариев этой записи