Російська версія скоро зникне. 🇺🇦 Перейдіть на українську просто зараз! Перейти

Російська версія скоро зникне. 🇺🇦 Перейдіть на українську!

Связаться с нами
Обсудить ваш проект [email protected]
Другие вопросы (партнерство, вакансии...) [email protected]
Наш офис Украина, Киев
Мы в соц.сетях
Веб студия » Блог » 301 редирект: переадресация на все случаи жизни
Дата публицакии: 5 июля 2020

301 редирект: переадресация на все случаи жизни

    11 хв

Loading

Работая над оптимизацией и продвижением сайта возникает вопрос о настройке 301-редиректа. Данный скрипт устроен довольно просто и используется для перенаправления одной веб-страницы на другую. В данной статье мы рассмотрим, что такое 301-редирект и как правильно его настроить. 

Что такое 301-редирект?

Начнем с самого начала. Редирект – это скрипт, который принудительно перенаправляет пользователя сайта с выбранной им страницы на другую. То есть, набирая в адресной строке браузера один адрес, попадаешь совсем на другой. Но это совсем не значит, что содержимое страницы обязательно будет иным. Однако, на многих некачественных сайтах случается и такое.

301 редирект: переадресация на все случаи жизни, brainlab

301-редирект устроен довольно-таки просто. Скорее всего, сложно понять, как он относится к поисковой оптимизации. Удивительно, что с помощью такого скрипта можно превратить потерю в победу, точнее привлечь на свой ресурс еще больше трафика. Важно правильно настроить 301-редирект, но об этом позже.

Узнаем, в каких случаях актуально такое перенаправление:

  • Удаление ресурса;
  • Перенос сайта на другой домен;
  • Непосредственное изменение структуры URL;
  • Объединение, склейка двух сайтов зеркал;
  • При смене CMS;
  • Отказ от использования www в начале URL.

Важно знать: отличия 301, 302, 307 редиректов 

Рассмотрим самые используемые редиректы в чем их отличие и где применяются:

  1. 301 Moved Permanently. Данный редирект представляет способ постоянную переадресацию, которая передает 90-99% веса ссылки. Перенаправление говорит, что ресурс был перенесен на новый адрес, где предыдущий УРЛ считается устаревшим. То есть в данном случае перенос страницы осуществляется без потери веса ссылки.
  2. 302 Found/Moved Temporerily. Совершенно другой тип перенаправления, означающий временную переадресацию. Разница в том, что такой перенос практически не передает ссылочного веса. В связи с тем, что интернет работает на основе нескольких протоколов, в двух вариантах данного стандарта, код ответа сервера будет различаться: HTTP 1.0: 302 с ответом сервера “Moved Temporarily” (Временно перемещен) – веб-документ временно перенесен на другой URL-адрес; HTTP 1.1: произошло изменение в ответе сервера на «Найдено» – веб-документ был найден. 
  3. 307 Moved Temporarily. HTTP 1.1 Only. Данный код перенаправления означает, что сейчас запрашиваемый ресурс доступен по другому адресу, но потом все равно вернется на прежний URL. К слову, 307 также, как и 302, страница не кэшируется.

Это далеко не все типы переадресации. В арсенале оптимизаторов есть и другие типы редиректов. К примеру, обновление метаданных или через JavaScript. Но в данном случае они запускаются на страницах, а не на сервере. К таким переадресациям желательно прибегать лишь в крайних случаях, поскольку ими злоупотребляют спамеры. 

301 редирект: переадресация на все случаи жизни, brainlab
💡 Планируете внедрить это в своем бизнесе?
Обращайтесь к нам за услугами:
💼 Разработка сайта под ключ 🛠️ Техническая поддержка вашего сайта 🛒 Создание интернет-магазина 🤖 Индивидуальная веб-разработка

Где настраивается 301-й редирект? 

Настроить переадресацию можно несколькими способами. Все зависит от движка сайта. Рассмотрим самые популярные варианты.

htaccess, или httpd.conf для Apache 

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

Чтобы создать постоянное перенаправление, пропишите в начале файла, подставив свои данные:

  • Редирект всего сайта на другой адрес:

Redirect / http://new-site.com/

  • Редирект с одной страницы на другую:

Redirect 301 /page-1.html /page-2.html

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

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.example\.com [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

  • Переадресация с HTTP на HTTPS

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Отметим, при работе с файлом, команда происходит на уровне сервера с OC Linux или Apache с активированным модулем Mod_rewrite.

Чтобы создать меньшую нагрузку на сервер, можно изменить .htaccess редирект конфигурационным файлом hpptd.conf.

Через плагины в CMS

Есть более простой способ – настройка при помощи специального плагина. К примеру, для сайта на WordPress отлично подойдет расширение Simple 301 redirects. Однако, здесь есть небольшой недостаток: формирование списка адресов для переадресации. 

PHP-условия

Если вы отлично разбираетесь в PHP, то такой способ для вас. Когда сайт сделан на CMS, нужно открыть index.php и в его корне прописать:

if($_SERVER[‘REQUEST_URI’] == “/index.php”) {
 header(“Location: /”,TRUE,301);
 exit();
}

Для понимания, в первой строке укажите старый url, а во второй — новый.

Также можно сделать перенаправление PHP при помощи отправки заголовков (скрипта):

<?php
  header(“HTTP/1.1 301 Moved Permanently”);
  header(“Location: http://www.newdomain.ru/newdir/newpage.htm”);
  exit();

JSP (Java) редирект

Данный вариант подойдет тем, кому нужны небольшие корректировки простых проектов. Необходимый код пропишите в одном файле, при этом сам файл добавьте на все нужные страницы, указав, будущее перенаправление на другой сайт:

<script type=”text/javascript” src=”redirect.js”></script>
<script type=”text/javascript”>
  location=”https://yandex.ru”;
</script>

Редирект в nginx

Здесь все просто:

if ($host = ‘www.domain.com’ ) {
  rewrite ^(.*)$ http://domain.com$1 permanent;
}

HTML-редирект

В случае простого статического сайта, где нужно изменить лишь одну страницу, лучшим способом – редирект HTML. Для этого достаточно просто добавить внутри специальный мета-тег. Для примера использование редиректа после 5-секундной задержки: 

<meta http-equiv=”refresh” content=”5;https://livepage.pro”>

Если вместо значения 5 поставить 0, то пользователя моментально перекинет на https://livepage.pro.

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

How to: 6 важных советов по перенаправлению

Предлагаем вашему вниманию шесть простых правил, а вернее сказать, советов, как лучше перенаправить свой сайт, настроить редирект.

301 редирект: переадресация на все случаи жизни, brainlab

Перенаправление старой страницы на новую

Если вы используете движок WordPress, можно просто отредактировать файл .htaccess, воспользовавшись плагином Redirection.

Redirect 301 /old-page.html /new-page.html

Переезд на новый домен – оптимальное перенаправление

RewriteEngine on  RewriteCond %{HTTP_HOST} ^oldsite.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.oldsite.com [NC]
RewriteRule ^(.*)$ https://newsite.com/$1 [L,R=301,NC]

Примечательно, что, если RewriteEngine on уже есть в вашем файле .htaccess, не повторяйте его. Просто скопируйте остальную часть кода. Это можно сделать и в Cpanel, если так удобнее. 

Перенаправление домена с версией www на версию без www (и наоборот)

С версии без www на версию с www:С версии с www на версию без www:
RewriteEngine onRewriteCond %{HTTP_HOST} ^example.com [NC]RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301,NC]RewriteEngine onRewriteCond %{HTTP_HOST} ^www.example.com [NC]RewriteRule ^(.*)$ http://example.com/$1 [L,R=301,NC]

Обратите внимание, что порядок в вашем файле .htaccess имеет значение. В случае несоблюдения порядка возможны нежелательные последствия. Даже если несколько команд размещены в «неправильном» порядке. 

Перенаправление домена с http версией на версию https

RewriteEngine On 

RewriteCond %{HTTPS} off

RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Чтобы все работало правильно, обязательно проверьте наличие сертификата SSL. В обратном случае вы получите сообщение о том, что «Соединение не защищено»,

Переадресация страницы с верхним регистром на нижний 

Чтобы сделать редирект с любого адреса на url в нижнем регистр пропишите следующий код на уровне php-скрипта:

$lowerURI=strtolower($_SERVER[‘REQUEST_URI’]);
if($_SERVER[‘REQUEST_URI’]!=$lowerURI)
{
  header(“HTTP/1.1 301 Moved Permanently”);
  header(“Location: http://” . $_SERVER[‘HTTP_HOST’] . $lowerURI);
  exit();
}

Переадресация страницы со слешем на страницу без “/” (и наоборот)

Чтобы сделать редирект со страниц без слеша на слеш, добавьте:

RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} !\/$
RewriteRule ^(.*[^\/])$ /$1/ [R=301,L]

А для удаления слеша используйте код:

RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} ![^\/]$
RewriteRule ^(.*)\/$ /$1 [R=301,L]

Проверка корректности настройки 301 редиректа

Первое, что нужно отметить, так это то, что системе требуется время, чтобы обнаружить код 301 и присвоить вес новой странице. Длительность процедуры зависит от того, как часто роботы посещают данный адрес. Может пройти до 2-3 недель.

301 редирект: переадресация на все случаи жизни, brainlab

А теперь о методиках проверки 301 редиректа:

  1. Поштучно вручную, через сервисы bertal.ru или Header Checker Tool;
  2. «Пачкой» используя программу  Screaming Frog Seo Spider, который может проверить сразу весь ресурс. 

Основные ошибки при использовании редиректов

Можно выделить ряд основных ошибок, с которыми сталкиваются веб-мастера:

  • Неправильный выбор типа редиректа.
  • Переадресация, приводящая к 200-й странице.
  • Установка временной переадресации вместо постоянной.
  • Внутреннее перенаправление без изменений урл в ссылках.
  • Использование многошагового редиректа.

301 редирект и Canonical: что и когда уместно

        301 редирект                               Canonical
Это самый предпочтительный метод переадресации. Отлично подойдет для страниц, которые были удалены или замещены. Актуально для доменов, которые переехали.
Нет возможности настроить 301- редирект. Если нужно сохранить идентичный контент на двух сайтах с разными доменами. Когда происходит динамическое изменение URL для одной и той же страницы. Если вы хотите сохранить обе страницы с дублированным контентом;

Влияние 301 редиректа на SEO

Мы уже писали, что можно использовать силу переадресации для массового увеличения органического трафика. Начнем с того, что редирект – важная часть поисковой оптимизации, так как он позволяет изменить структуру сайта и удалить его ненужные страницы. Благодаря редиректу, можно избавиться от дублей страниц, что позволит улучшить внутреннюю оптимизацию сайта. Именно при 301 редиректе происходит склейка ИКС и PR. Это значит, что ресурс сохранит старое значение на новом адресе и при этом нисколько не потеряет в глазах поисковых систем.  

301 редирект: переадресация на все случаи жизни, brainlab

На продвигаемых сайтах такая переадресация необходима, так как она позволяет сохранить позиции в поисковых системах. 

Заключение: подводим итоги

Из вышесказанного можно сделать вывод: 301-редирект имеет множество применений, когда речь идет о поисковой оптимизации.

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

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

Вопросы и ответы

Что такое 301 редирект?

301 редирект — это тип переадресации веб-страницы, который указывает поисковым системам и браузерам, что запрашиваемая страница была окончательно перемещена на новый адрес. Это означает, что старый URL будет автоматически перенаправляться на новый URL.

Когда нужно использовать 301 редирект? 

301 редирект следует использовать, когда вы изменяете адрес или URL страницы, переносите контент на другой домен или перемещаете страницу на новый адрес. Он также используется, когда необходимо объединить несколько версий одной страницы в одну основную версию для улучшения SEO и предотвращения дубликатов.

Как создать 301 редирект на своем веб-сайте?

Для создания 301 редиректа можно использовать файлы .htaccess (если ваш сервер работает на Apache) или файлы web.config (если вы используете IIS). В этих файлах можно указать правила переадресации, которые автоматически направят пользователей на новые адреса.

5/5 - (1 голос)
Технический директор, студии BRAINLAB

Автор статьи - технический директор и сооснователь Brainlab Studio Дмитрий Колесников. Он занимается веб-разработкой с 2011 года и за это время реализовал более 400 проектов в сфере e-commerce и B2B, сочетая глубокие технические знания со стратегическим планированием. Дмитрий активно поддерживает молодых разработчиков в начале их карьеры, а его статьи наполнены практическими советами и полезными инсайтами из реального опыта.

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

Оставляйте ваши комментарии и вопросы к статье, мы обязательно ответим! *Ваш e-mail не будет отображен в комментарии.

Доверьте нам ваш проект!
Ждем вашу заявку.
Разрабатываем IT-решения с гарантией уже больше 10 лет.

Обсудить ваш проект

[email protected]

Другие вопросы (партнерство, вакансии...)

[email protected]

Мы в соц.сетях

Калькулятор стоимости сайта Brainlab

Интересует стоимость разработки сайта? Наш калькулятор дает возможность изучить стоимость каждого этапа и подобрать подходящий под бюджет вариант.

Доверьте нам ваш проект!
Ждем вашу заявку.

Разрабатываем IT-решения с гарантией уже больше 10 лет.
Заполните имя
Заполните телефон
Заполните email
Спасибо за заявку!

Наши менеджеры свяжутся с вами в ближайшее время.

Ошибка при отправке!