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

Permanent Redirect 301 – это правило, которое используется для осуществления постоянной переадресации с одного домена на другой, так и для отдельных ссылок с неактуальным содержимым. Помимо переноса сайта и удаления дублей, редирект может понадобиться для перелинковки страниц веб-ресурса с целью образования правильной ссылочной структуры. Применение переадресации также способствует перемещению контента сайта без потерь в поисковой выдаче и трафике.

Существуют и другие типы редиректов – временные (302 и 307). Они применяются на короткий промежуток времени, например, при проведении на ресурсе технических работ. Поисковые системы относятся к их использованию отрицательно. Предположим, что владелец портала поменял доменное имя, а также сменил протокол передачи данных HTTP на HTPPS. Если выполнить настройку временной переадресации, то в индексе Google и Yandex появятся сразу несколько копий ресурса, что ведет к утрате позиций в поисковой выдаче. 301 редирект позволяет избежать подобных проблем, так как в индексации находится только одна ссылка.

Зачем использовать 301 редирект

301 редирект применяется в следующих ситуациях:

  1. Перенос веб-ресурса или изменение доменного имени. Требуется выполнить настройку перенаправления пользователей со старого сайта на новый (с mysite.com на new.mysite.com).
  2. Изменение вида ссылки для определенных страниц или CMS. Осуществляется настройка переадресации с mysite.com/main1 на mysite.com/page1.
  3. Перенос раздела сайта на поддомен. Иногда требуется поменять адрес c www.mysite.com на new.mysite.com.
  4. Объединение зеркал. Поисковая система считает, что адреса mysite.com и mysite1.com – разные. Фактически содержимое ресурсов идентичное, но написание ссылки другое. Робот проиндексирует только один ресурс, а второй посчитает дублем, а это ведет к потере позиций в индексе. Нужно прописать редирект.
  5. Удаление несуществующих страниц. Если пользователь переходит на несуществующую страницу, то браузер отображает ошибку 404. Когда на ресурсе есть множество несуществующих ссылок, то это негативно воспринимается поисковыми роботами. Необходимо настроить перенаправление.
Также 301 редирект потребуется для удаления дублей веб-страниц, корректного перехода пользователей с десктопной версии сайта на мобильную или планшетную. Переадресация помогает сосредотачивать трафик с адресов, приобретенных в разных доменных зонах на приоритетном ресурсе.

Настройка 301 редирект в .htaccess

.htaccess – это файл дополнительной конфигурации, который используется на серверах Apache. С его помощью можно задавать параметры и разрешения для функционирования сервера без изменения основного конфигурационного документа. В файле допускается прописать правила редиректа с директивами Redirect, RedirectMatch или RewriteRule.

Отыскать .htaccess можно в корневом каталоге ресурса через панель управления или FTP. Если он не виден, то необходимо активировать опцию просмотра скрытых файлов. Настройка переадресации начинается с подготовительного этапа:

  1. Требуется войти в панель управления хостингом и отыскать в корневом каталоге (public_html для Вордпресс) файл .htaccess. Если документ отсутствует, то требуется его создать.
  2. Для корректной обработки параметров, необходимо в файле сделать запись в блоке IfModule (<IfModule mod_rewrite.c> </IfModule>).
  3. На этом этапе нужно прописать директиву для преобразования определенного каталога RewriteEngine On.

Нужно обратить внимание перед настройкой переадресации в .htaccess, что хостинги применяют по умолчанию 302 редирект. Таким образом, в правилах нужно прописывать флаг [R=301,L]. Далее будет рассмотрены примеры настройки 301 редиректа в .htaccess.

Для редиректа с поддомена на подпапку нужно вбить в .htaccess следующее правило:

RewriteCond %{HTTP_HOST} ^blog\.domain\.com$ [NC]

RewriteRule ^(.*)$ https://domain.com/blog/ [R=301,L]

Редирект с HTTP на HTTPs

Существует проблема, препятствующая SEO-продвижению, под названием mixed content. Это ситуация, когда в поиске индексируются защищённая SSL-сертификатом и незащищённая версии сайтов. Чтобы предотвратить возникновение такой проблемы, необходимо настроить редирект с одной версии на другую.

В .htaccess вбивается следующая формула:

RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://domain.com/$1 [R=301,L]

Склейка версий сайта  с WWW и без WWW

Аналогичная ситуация с одновременной индексацией версий сайта с www и без www.

Чтобы перенаправить сайт с www на без www, воспользуйтесь следующей директивой:

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

В обратную сторону:

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

Склейка версий со слэшем на конце и без

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

Чтобы перенаправить сайт с версией со слэшем на конце на версию без слэша, нужно задать следующую директиву:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /$1/ [L,R=301]

В обратную сторону правило такое:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /$1 [L,R=301]

Редирект на URL без расширения

Некоторые CMS по умолчанию создают страницы, которые можно открыть с .html, .php или каким-нибудь другим расширением на конце, в то время как такие расширения выглядят громоздко и неуместно. Большинство вебмастеров предпочитают обходиться без них. Для этого нужно правильно настроить склейку в .htaccess.

Для избавления от .html нужно прописать следующее правило:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^(.+)$ $1.html [L,QSA]
RewriteCond %{THE_REQUEST} ^[a-z]{3,9}\ /.*\.html\ HTTP/
RewriteRule ^(.*)\.html$ /$1 [R=301,L]

Аналогично будет выглядеть правило для других расширений. Разумеется, вместо html нужно подставить свой вариант.

Создание постоянной переадресации 301 через настройки и плагины CMS

301 редирект на WordPress

Установив плагин Redirection, необходимо зайти в раздел “Tools” и найти там опцию “Redirection”. Там вам предложат ввести старую и новую ссылки в соответствующие разделы. Как только вы заполните поля, нужно нажать “Add Redirection”. Если всё сделано правильно, то редирект должен сработать.

301 редирект на Joomla 3.0

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

Далее нужно зайти в раздел “компоненты” и выбрать там компоненты “перенаправление”.

В данном разделе введите в соответствующие поля ссылки для переадресации. Проверьте блок “состояние” – оно должно быть включено. После проделанных версий нужно нажать на сохранение.

301 редирект на Тильде

Нужно перейти в раздел “Настройка сайта – SEO – Редиректы страниц (code 301) – Редактировать.

Внизу вы найдёте форму, в которую нужно будет вбить нужные адреса. Внесённые настройки нужно сохранить, а также не забыть опубликовать изменения.

 Редирект 301 в панелях управления сервера

Среди веб-мастеров популярностью пользуются два типа панелей управления сервером – ISPmanager и Cpanel. Это функциональные решения, которые позволяют настроить перенаправлением с кодом 301.

ISPmanager

В ISPmanager допускается ручное редактирование параметров файлов nginx.config или .htaccess. Кроме этого, есть встроенный инструмент для настройки редиректа. Необходимо в главном меню выбрать вкладку «WWW» и кликнут «WWW-домены». Далее открыть пункт «Редиректы».

Cpanel

В Cpanel настройка выполняется по следующему алгоритму:

  1. Открыть вкладку «Домены» и выбрать «Перенаправления».
  2. В пункте «Тип» (Type) указать редирект «Постоянный 301».
  3. В выпадающем списке вписать доменное имя сайта с протоколом и префиксом.
  4. Далее указать, куда ведет переадресация (Redirect to).
  5. В пункте «Перенаправление www» отметить чекбокс «Перенаправлять только с www» (Redirect witch or without www).
  6. Нажать на кнопку «Сохранить» и щелкнуть «Добавить» (Add).
Обратите внимание, если не нажать на кнопку «Добавить», то параметры не будут сохранены.

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

В панелях управления хостингом также можно настроить редирект. Рассмотрим такие панели как Plesk и DirectAdmin.

Plesk:

  1. Необходимо открыть раздел «Сайты и домены» (Website and Domains).
  2. Перейти во вкладку «Настройки хостинга» (Setting).
  3. Рядом с доменом, который нужно настроить нажать «Изменить» (Change).
  4. В поле «Тип хостинга» (Type) выбрать «Перенаправление» (Redirect).
  5. В пункте «Конечный адрес» (For the Domain) ввести ссылку, куда будут перенаправляться посетители домена.
  6. Отметить чекбокс код 301 (по умолчанию задан 302).
  7. Нажать на кнопку «Сохранить» (Add).

DirectAdmin:

  1. Открыть «Менеджер учетных записей» и выбрать «Перенаправление».
  2. Внизу нажать на кнопку «Создать новое перенаправление» (Add New).
  3. В пункте «Локальный URL» (Local URL) нужно указать, куда будут перенаправляться пользователи.
  4. В разделе «Тип перенаправления» (Type) выбрать «Постоянный 301».
  5. В пункте «Целевой URL» (Destination URL) вписать приоритетный адрес веб-ресурса.

Нажать на кнопку «Сохранить» (Save).

Теперь можно протестировать переадресацию через веб-обозреватель, чтобы проверить корректность работы редиректа.

Редирект для PHP

Для самописных сайтов, написанных на php существует свой способ переадресации. Для этого нужно в header кода для индексного файла (обычно это index.php) добавить правило для редиректа.

<?php
// index.php
header(“Location: https://site.ru/index1.php”);
exit( );
?>

Адрес, указанный после слова “Location” это страница, куда осуществляется редирект.

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

Первое, что можно сделать – вручную протестировать правильность работы 301 редиректа. Необходимо в адресную строку веб-обозревателя скопировать ссылку на сайт или страницу, с которой настроено перенаправление и проверить корректность отображения. Если при открытии появляется нужный портал, то настройка сделана правильно.

Также протестировать корректность переадресации можно с помощью автоматизированного программного обеспечения:

  • для постраничного тестирования – httpstatus.io или Redirect Tracker;
  • для тестирования всего ресурса – Netpeak Spider.

Если при тестировании появляется ошибка в браузере с кодом 310 «ERR_TOO_MANY_REDIRECTS» (циклический редирект), необходимо сбросить настройки в панели управления хостингом или веб-сервером по умолчанию и настроить переадресацию заново, не забывая прописывать соответствующие атрибуты и флаги.

Если сайт добавлен в панель вебмастера в яндекс, можно посмотреть и там. Для этого нужно в разделе “инструменты” найти вкладку “проверка ответа сервера”.

Затем в поле “опрашиваемый url” вбить адрес, с которого должна осуществиться переадресация, и нажать на кнопку “проверить”.

После чего высветятся данные по редиректу.

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

301 редирект оказывает положительное влияние на SEO-продвижение ресурса. Этот тип перенаправления передает тематический индекс цитирования (ТИЦ), а также ссылочную массу на новый URL. Кроме того, если на старый ресурс были наложены ограничения со стороны поисковых систем, 301 редирект их не передает. При использовании 301 редиректа, время вхождения сайта в индекс Yandex и Google составляет от 1 до 2 недель. Правильная настройка переадресации показывает увеличение органического трафика на релевантных страницах.

Permanent Redirect 301 – это один из инструментов, позволяющий оптимизировать работу веб-ресурса, увеличить трафик и позиции в индексе. Для настройки переадресации можно использовать плагины, панели управления хостингом или сервером. Кроме этого, допускается вносить записи в файл .htaccess или создать скрипт для PHP.