Категории блога
Чеклист по оптимизации сайта
Бесплатный чек-лист
Получить
Но вам требуется продвижение сайта или создание сайта-лидера, идеального для SEO? Тогда вы можете оставить заявку на продвижение или заявку на создание сайта. Если вы собираетесь продвигать сайт самостоятельно — продолжайте чтение!
Редиректы являются неотъемлемым элементом технической оптимизации сайта, с которым время от времени сталкивается абсолютное большинство вебмастеров и SEO-специалистов. Если вы ранее не использовали редиректы и не знаете, с какой стороны к ним подступиться, это руководство предназначено именно для вас. В рамках одной статьи мы собрали список основных редиректов и примеры их использования, а также перечень потенциальных ошибок и проблем, которые могут возникнуть вследствие неправильной настройки редиректов.
Редирект — механизм автоматической переадресации пользователей с одного URL на другой. Чаще всего переадресация реализуется на стороне сервера при помощи специальных инструкций в серверных файлах-конфигураторах. Для сайтов на серверах Apache используется файл .htaccess; для тех, что работают на nginx, — nginx.config. Также переадресацию можно настроить с помощью PHP, HTML и jаvascript.
Всего существует 10 различных видов редиректов, включая Meta Refresh. Но на практике распространены случаи использования всего нескольких.
301 редирект — абсолютный лидер по частоте использования. Он применяется для постоянной переадресации и передает ссылочный вес от начального адреса к конечному URL по аналогии с обычными ссылками.
301 редирект используется для нескольких целей:
К примеру, 301 редирект, отвечающий за перенаправление с адресов с префиксом www. на адреса без префикса, выглядит следующим образом:
RewriteCond %{HTTP_HOST} ^www.site.com$ [NC]
RewriteRule ^(.*)$ http://site.com/$1 [R=301,L]
Если же нужно выставить редирект со страниц с GET-параметрами на адреса без них, следует прописать в .htaccess следующий код:
RewriteCond %{QUERY_STRING} action=page [NC]
RewriteCond %{QUERY_STRING} id=(d+) [NC]
RewriteRule .* /page/%1/? [R=301,L]
302 редирект используется для временной переадресации и чаще всего настраивается на этапе тестирования новых страниц и редизайна сайта. Страницы, с которых выставлен 302 редирект, не «склеиваются» с конечным URL, то есть они продолжают независимо индексироваться и существовать в индексах поисковых систем. С этой особенностью 302 редиректа связана ошибка, часто допускаемая неопытными SEO-специалистами. Суть ее заключается в том, что для устранения дублей страниц и индексации только одного корректного URL используется не 301, а 302 редирект, из-за которого в индексе возникают крайне нежелательные дубли.
302 редирект передает ссылочный вес так же, как и 301. Отметим отдельно, что в зависимости от версии HTTP код ответа может отличаться — 302 Moved Temporarily в случае с HTTP 1.0. и 302 Found на сайтах с HTTP 1.1.
Пример использования 302 редиректа — временное перенаправление пользователя на страницу распродажи или акции без изменения изначальной страницы товара/услуги.
Выглядеть он будет следующим образом:
Redirect 301 /old/black-dress-1.html http://www.site.com/black-dress-1-sale.html
Еще один распространенный пример — перенаправление на мобильную версию сайта, которая находится на выделенном поддомене. Так как в данном случае важна индексация обеих версий, то 302 редирект подходит для этой цели как нельзя лучше. Выглядеть он будет так:
RewriteCond %{HTTP_USER_AGENT} (?i:midp|samsung|nokia|j2me|avant|docomo|novarra|palmos|palmsource|opwv|
chtml|pda|mmp|blackberry|mib|symbian|wireless|nokia|hand|mobi|phone|
cdm|upb|audio|SIE|SEC|samsung|HTC|mot-|mitsu|sagem|sony|alcatel|lg|eric|vx|NEC|philips|mmm|xx|panasonic|sharp|
wap|sch|rover|pocket|benq|java|pt|pg|vox|amoi|bird|compal|kg|voda|sany|
kdd|dbt|sendo|sgh|gradi|jb|dddi|moto|iphone|android) [NC]
RewriteCond %{HTTP_HOST} site.com
RewriteRule ^$ http://m.site.com/ [R=302,L]
Как и 302, 307 редирект используется для временной переадресации и не предполагает «склейки» URL. Ключевое отличие от 302 Moved Temporarily заключается в том, что при помощи 307 редиректа вы можете сообщить поисковикам, что ваш сервер совместим с HTTP 1.1, а также что в кешировании конечной страницы редиректа нет необходимости.
В качестве примера можно привести перенаправление на страницу авторизации, которое будет производиться в определенных условиях:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^site.ru$
RewriteCond %{REQUEST_METHOD} POST
RewriteRule ^(.*)$ http://site.ru/login$1 [R=307]
Пример временного 307 редиректа на другой домен:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^old.site$
RewriteRule (.*)$ http://new.site/$1 [R=307,L]
Ниже вы можете найти краткое описание прочих видов редиректов, которые на практике встречаются весьма редко, но могут вам пригодиться в особых ситуациях.
Редирект со множественным выбором предполагает автоматический или ручной выбор одного из вариантов перенаправления. Самый показательный пример — переход на одну из нескольких доступных языковых версий сайта. Используется довольно редко.
Работает по аналогии с 302 временным редиректом, но отличается по методу запроса. Запрещает кеширование конечного адреса редиректа.
304 редирект сообщает браузеру о том, что с момента последнего визита содержимое страницы не изменилось и его можно подгрузить из локального кеша.
В случае с 305 Use Proxy браузер получает информацию о том, что для перехода на конечный адрес требуется прокси, адрес которого передается в одном из заголовков самого редиректа. Получив подобный ответ, браузер делает повторный запрос уже с использованием указанных прокси.
Чтобы обеспечить максимально корректную работу редиректов на своем сайте, вам нужно учесть ряд нюансов, которые напрямую влияют не только на восприятие сайта поисковиками, но и на уровень доверия и удобства пользователей. Ниже приведен список основных рекомендаций, которых следует придерживаться при настройке редиректов.
Чтобы выяснить, нет ли на вашем сайте описанных выше проблем, воспользуйтесь краулером и просканируйте весь сайт для анализа имеющихся редиректов. Например, если вы используете Netpeak Spider, вам следует выполнить следующие действия:
Программа идентифицирует следующие типы ошибок:
Всего насчитывается 10 видов редиректов, но лишь некоторые из них могут похвастаться практическим применением. Это относится к следующим видам:
При построении редиректов необходимо придерживаться ряда базовых рекомендаций:
Чтобы я бы без вас делал! Наконец-то перенес сайт на новый домен без потери трафика. Респект вам!
Спасибо, отличное руководство. Даже разобрался я, хотя я нуб в таких делах. А это значит, что написано простым и понятным языком, а тем более так подробно.
Помогло, спасибо!
Всегда нужно делать редирект или в большинстве можно использовать просто каноникал?