На первый взгляд, все кажется очень простым. Если вы навсегда перемещаете контент в новое место, используйте 301 редирект. Если перемещаете его временно, используйте 302 редирект.
Но многие пользователи не могут отличить 301 от 302. Оба идентичны по своей функциональности.
Ответ прост: поисковые системы рассматривают 301 и 302 редирект по-разному. И выбор неправильного, может вызвать проблемы с SEO, которые часто остаются незамеченными в течение месяцев или даже лет.
Когда используется 301 редирект
Вот несколько распространенных случаев использования:
- При изменении URL-адреса сайта навсегда.
- При переходе на новый домен.
- При переключении с HTTP на HTTPS.
- При исправлении проблем с дублированием контента без www и с www.
- При объединении двух или более страниц сайта.
- При изменении навсегда структуры URL-адресов сайта.
Когда использовать 302 редирект
Случаев использования 302 редиректа не так уж много:
- Перенаправление пользователей на нужную им версию сайта (в зависимости от местоположения / языка).
- Проведение сплит-тестирования функциональности или дизайна веб-страницы.
- Получение отзывов о новой странице, не влияя на рейтинг старой.
- Проведение рекламной акции и временной переадресации посетителей на страницу продаж.
Существуют и другие варианты использования, но они, как правило, очень специфичны и индивидуальны. 302 редирект необходимо использовать только в том случае, если вы планируете через некоторое время вернуть старую страницу.
Как создавать редиректы
301 и 302 редиректы можно реализовать несколькими способами, но наиболее распространенным является внесение изменений в файл .htaccess. Его можно найти в корневом каталоге сайта.
Как создать 301 редирект
Если вы хотите создать переадресацию с кодом 301 с одного URL-адреса на другой, добавьте это в свой файл .htaccess:
Также это можно сделать с помощью RankMath или плагина Redirections. Просто выберите желаемый тип переадресации, а затем добавьте URL-адрес источника.
Если необходимо перенаправить весь сайт, то добавьте в свой файл .htaccess следующее:
RewriteCond %{HTTP_HOST} ^oldsite.com [NC, OR]
RewriteCond %{HTTP_HOST} ^www.oldsite.com [NC]
RewriteRule ^(.*)$ Https://newsite.com/$1 [L,R=301,NC]
Имейте в виду, что нужно поддерживать активным старый хостинг для переадресации сайта с помощью .htaccess, что может быть дорогостоящим. Так что редирект лучше делать через DNS. Большинство регистраторов позволяют выбрать для этого 301 или 302 редирект. Если вы используете Google Domains, просто нажмите «Веб-сайт»> «Переадресация домена», затем введите новый домен и выберите «Постоянная переадресация».
Как создать 302 редирект
Если необходимо создать перенаправление с кодом 302 с одного URL-адреса на другой, добавьте в свой файл .htaccess следующее:
Это также можно сделать с помощью RankMath или плагина Redirections в WordPress:
Если необходимо создать переадресацию всего сайта, используйте этот код:
RewriteCond %{HTTP_HOST} ^oldsite.com [NC, OR]
RewriteCond %{HTTP_HOST} ^www.oldsite.com [NC]
RewriteRule ^(.*)$ Https://newsite.com/$1 [L,R = 302,NC]
Большинство редиректов домена являются постоянными, поэтому необходимо использовать код 301. То же самое и с переадресацией с HTTP на HTTPS.
Как Google обрабатывает 301 и 302 редирект
Поскольку функциональность 301 и 302 редиректов идентична, выбор того, какой из них использовать, в основном зависит от того, как Google к ним относится.
В первую очередь, нужно обратить внимание на следующее:
- Индексация
- Ссылочный вес
Индексация
Когда один URL-адрес перенаправляется на другой, Google оставляет в индексе только один из них.
Для 301 редиректа
Индексироваться будет «новый» URL. Например, если вы создаете переадресацию с кодом 301 с old-page.html на new-page.html, Google проиндексирует new-page.html и деиндексирует old-page.html. 301 редирект сообщает Google, что это постоянный адрес, поэтому нет смысла сохранять старый URL в индексе.
Люди иногда могут путаться потому, что после создания 301 редиректа, старый URL-адрес некоторое время все еще отображается в Google при использовании оператора «site:» в поисковике.
Например, Moz много лет назад поставил переадресацию своего домена с seomoz.org на moz.com , но seomoz.org все еще отображается в Google.
Для 302 редиректа
URL, который индексирует Google, обычно является исходным. Однако, поскольку Google знает, что люди часто ошибочно используют 302-е редиректы для постоянной переадресации, они фактически рассматривают каждую переадресацию с кодом 302 индивидуально, чтобы понять, что вы на самом деле имели в виду.
Никто точно не знает, как долго должен стоять 302 редирект, прежде чем Google начнет рассматривать его как постоянную переадресацию. Обычно это занимает от нескольких недель до нескольких месяцев, но иногда это происходит в течение нескольких дней или недель.
Если вы не знаете, как Google обрабатывает ваши 302 редиректы, вот небольшая хитрость:
Вставьте адрес сайта в инструмент проверки URL-адресов Search Console. Если отображается предупреждение «URL не в Google», значит, Google рассматривает переадресацию как постоянную (301). Если он находится в индексе Google, то это рассматривается как временная переадресация (302).
Ссылочный вес
Для 301редиректа
Ссылочный вес передается новому URL.
Например, если old-page.html имеет десять обратных ссылок, и вы ставите 301 редирект на new-page.html, то ссылочный вес будет передаваться new-page.html. Другими словами, Google ранжирует new-page.html так, как если бы на нее ссылалось десять ссылок.
Для 302 редиректа
Ссылочный вес обычно передается старому URL.
Например, если вы ставите переадресацию (302) с old-page.html на new-page.html, а new-page.html имеет десять обратных ссылок, весь ссылочный вес, обычно передается на old-page.html.
Предполагается, что перенаправляемая страница такая же или похожа на «новую» страницу. Если нет, то google может рассматривать ее как страницу 404.
Вы можете проверить, как Google обрабатывает редиректы, с помощью инструмента проверки URL. Если в поле «Google-selected canonical» отображается «Inspected URL» (как в случае ниже), Google рассматривает переадресацию как временную. В противном случае он рассматривает ее как постоянную.
Стоит ли «исправлять» случайные 302 редиректы?
Допустим, вы сделали распространенную ошибку, использовав 302 редирект. Стоит ли тратить время на его замену на 301 редирект?
Ответ зависит от того, как Google в данное время обрабатывает эти перенаправления.
Если Google сам во всем разобрался и уже рассматривает «временные» 302-е как постоянные 301-е редиректы, то внесенные изменения ни на что не повлияют. В другом случае, необходимо будет поменять 302 на 301 редирект.
Чтобы проверить, как Google обрабатывает отдельные страницы, можно использовать инструмент проверки URL в GSC. Однако, если сайт имеет большое количество переадресаций, то это займет много времени. Более быстрый способ – сначала найти 302 редиректы, которые получают органический трафик. Это явный признак того, что Google все еще рассматривает переадресацию как временную.
Это можно сделать в Аудите сайта Ahrefs. Просканируйте свой сайт, а затем проверьте отчет о переадресации на предмет предупреждения «302 редирект».
Если он есть, нажмите, чтобы просмотреть затронутые URL-адреса, и отсортируйте отчет по «Органическому трафику» от большего к меньшему.
Послесловие
Сделать переадресацию не так уж и сложно. Тем не менее, было бы обнадеживающе знать, что даже если действительно используется неправильный тип редиректа, Google, в конечном итоге поймет, что вы имели в виду. Но Google не всегда достаточно умен, чтобы каждый раз безошибочно определять, что имеется в виду, поэтому рекомендуется, по возможности, использовать правильный тип переадресации.