Для чего нужен редирект и как его настроить

Когда используется редирект
Редирект — это перенаправление пользователя с одного веб-адреса на другой. Страница, с которой настраивается переадресация, называется донором. А адрес, на который ведет редирект, — акцептором.
Например, клиент что-то купил на сайте и сохранил ссылку на ресурс в закладках. А потом владелец сменил веб-адрес. И теперь, чтобы пользователь попадал на сайт по старой ссылке, нужна переадресация. Но это лишь частный случай. И есть множество сценариев, когда понадобится редирект.
С http на https
Критически важный редирект. Настраивается при создании безопасного соединения.
Напоминаем: чтобы передаваемые на сайте данные не стали легкой добычей злоумышленников, а пользователи и поисковики больше доверяли ресурсу, на сайте должен быть активирован SSL-сертификат. При наличии SSL протокол передачи данных в адресной строке принимает вид https://.
Но пользователь все равно может попасть на сайт по ссылке, которая будет начинаться с прокола http://. И даже если на ресурсе установлен SSL, соединение в таком случае не будет защищено и данные посетителя станут уязвимыми. Чтобы этого избежать, нужно настроить редирект c http на https.
С www.
Искать сайт по www. в начале его адреса уже давно нет необходимости. Ресурс можно найти по домену, и протокол передачи данных добавится автоматически. Однако есть несколько сценариев, когда три w могут усложнить путь к вашему сайту:
- Некоторые пользователи продолжают использовать их в начале адреса сайта.
- www могут добавляться к названию ресурса в справочных сервисах и тематических подборках.
Чтобы сайт корректно открывался с www, а поисковики не воспринимали такие адреса как дубли страниц главного ресурса, необходимо настроить редирект с www на основной домен.
Ребрендинг
Переименовали компанию и зарегистрировали новый домен? Редирект со старого адреса поможет не потерять аудиторию, которая будет переходить на ваш сайт по старым ссылкам. А поисковики продолжат учитывать SEO-показатели ранее размещенных страниц.
Но редирект со старого домена возможен, пока компания остается его владельцем. Например, у вас был адрес bestcompany.com. Из-за ребрендинга или по другим причинам, вы решили зарегистрировать домен goldcompany.com и разместить на нем сайт. Если на предыдущий адрес ведет множество ссылок, и пользователи продолжают искать по нему вашу компанию, имеет смысл продлить такой домен. Но как только вы перестанете быть владельцем доменного имени, редирект с него станет недоступным.
Обновление структуры сайта и создание поддоменов
Например, у вас есть интернет-магазин компьютерной техники, в котором клавиатуры представлены на странице comp-store.com/keyboards. В какой-то момент вы объединяете все устройства в один раздел, и теперь страницы клавиатур лежат по адресу comp-store.com/devices/keyboards. Чтобы не навредить поисковой оптимизации и не лишиться части посетителей, нужно настроить редирект с comp-store.com/keyboards на comp-store.com/devices/keyboards.
При переносе сайта на другую CMS некоторые страницы могут получить новые адреса. Если миграция проводится после запуска ресурса, переименованные страницы уже могут активно использоваться в рекламе и SEO. В таком случае, чтобы не терять позиции в поисковой выдаче, также нужно настроить редиректы на обновленные адреса.
При масштабировании онлайн-проекта определенные разделы сайта могут переносится на поддомены. И для таких страниц также нужно настраивать редирект. Например, на сервисе отдельно от его основного направления публикуются онлайн-уроки по адресу it-platform.com/courses. Со временем материалов становится очень много и у них появляются различные категории. Компания решает разместить их на поддомене. И чтобы не потерять поисковый рейтинг и посетителей, нужно настроить редиректы с it-platform.com/courses на courses.it-platform.com/
Удаление страниц и перенаправление с неактуальных адресов
Предположим, вы решили закрыть какую-то услугу, а заодно и удалить связанный с ней лендинг. Однако поисковики запомнят адрес. И если у страницы есть посещаемость, стоит подумать, куда ее направить. Рассмотрим два варианта.
1. Закрытие страницы и перенаправление аудитории на релевантный контент. Если одна услуга была поглощена другой или у вас есть улучшенный сервис, можно настроить редирект на него. Подходящей услуги нет? Подготовьте статью на схожую тему и перенаправьте на нее аудиторию, упомянув в материале другие услуги компании.
2. Настройка редиректа без закрытия страниц. Допустим, у вас есть лендинг продукта А, на котором вы разместили много крутого контента: стильный визуал, видеоинструкции, отзывы клиентов и многое другое. И вот вы выпускает продукт B, который представляет собой улучшенную версию предыдущего решения. Обновлять контент первой страницы по каким-то причинам нельзя, и вы создаете новую. Теперь можно на лендинге А поставить ссылку на сервис Б, рассказав пользователям о нововведениях. Или сразу сделать редирект на новую страницу, и уже на ней упомянуть оригинальный продукт.
Вариантов с настройкой перенаправления может быть очень много. Избегайте битых ссылок и нерелевантных для пользователей страниц и настраивайте переадресацию по подходящим вам сценариям.
Типы переадресации
Редиректы могут отличаться HTTP-кодами, статусами страниц для поисковиков и способами настройки. За перенаправление отвечают 3XX-статусы HTTP.
300 — Множественный выбор. В ответ на запрос пользователя предоставляет несколько вариантов на выбор: например, страницы на разных языках или контент в разных форматах.
301 — Перемещение навсегда. Самый популярный редирект. Используется при удалении предыдущей страницы с перенаправлением пользователя на новый адрес.
302 — Временное перемещение. Когда на основном сайте или лендинге идут технические работы или обновления, можно временно направлять трафик на альтернативную страницу. 302 редирект говорит поисковикам, что основная страница скоро вернется и индексировать новую не нужно. Но если ожидание затянется, поисковые системы могут расценить такое перенаправление как постоянное.
303 — Посмотрите другое. Используется, чтобы не вводить данные повторно. Наиболее актуален при работе с формами обратной связи. Например, при перезагрузке страницы с формой заявки или оплаты пользователю не придется повторять уже проведенную операцию.
304 — Не модифицирован. Если страница не изменялась с момента последнего визита посетителя, сервер может предложить использовать данные, сохраненные в кеше.
305 — Используйте прокси. Перенаправляет пользователя на прокси-сервер. Обеспечивает анонимность при подключении к ресурсу и передаче данных.
307 — Временная переадресация. Более современная версия кода 302. Точнее и корректнее обрабатывает запросы с методом POST, но поддерживается не всеми браузерами.
308 — Постоянное перенаправление. Выполняет схожие с 301 функции, но не позволяет менять метод запроса.
Как настроить редиректы
В зависимости от используемой платформы и технологий перенаправление можно настроить несколькими способами:
- в личном кабинете провайдера;
- в системах управления контентом и их плагинах;
- в панели управления хостингом;
- через файлы .htaccess — для Apache-серверов и web.config — для Windows хостинга;
- через HTML, PHP и другими способами.
Личный кабинет
Чтобы настроить редиректы для домена, понадобится расширенный DNS-редактор. Как его активировать, рассказали здесь. А как в несколько кликов настроить перенаправление в личном кабинете, подскажет наш подробный гайд.
CMS и их плагины
Редиректы можно настроить в Joomla, Битрикс, OpenCart и других системах управления контентом. У многих CMS для этой цели используются специальные плагины: например «Redirection» в WordPress. Некоторые плагины обеспечивают расширенные настройки или наоборот позволяют указать только самые важные редиректы, например перенаправления на https.
Панели управления хостингом
сPanel и другие панели управления предлагают встроенные инструменты для настройки редиректов. Для этого нужно открыть раздел «Redirects» и указать старый и новый URL, а также тип редиректа, например 301 или 302. Подробнее о настройке редиректов в cPanel рассказали в этом гайде.
Файлы конфигурации
В системном файле .htaccess для Apache-серверов можно настроить перенаправление для отдельных страниц сайта и всего ресурса. Его можно найти в корневой папке сайта и открыть через панель управления хостингом или CMS. Различные редиректы, например 301, можно настроить при помощи консольных команд.
apache
RewriteEngine On
RewriteRule ^old-page$ http://example.com/new-page [R=301,L]
RewriteEngine On
RewriteCond %{HTTP_HOST} site.com/old-page
RewriteRule (.*) http://site.com/new-page$1 [R=301,L]
Где:
- site.com/old-page — страница-донор,
- site.com/new-page — URL-акцептор.
Настроить перенаправления с WWW на URL без WWW поможет команда:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.site.com$ [NC]
RewriteRule ^(.*)$ http://site.com/$1 [R=301,L]
Где site.com — ваш домен.
Перенаправить пользователей со всех http://-страниц, включая http://www, на адреса с SSL (с протоколом https://) можно при помощи различных команд. Например:
RewriteEngine On RewriteCond %{SERVER_PORT} !^443$ RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
RewriteEngine On RewriteCond %{HTTPS} =off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
web.config — для IIS-серверов
Пример настройки 301 редиректа:
xml
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Redirect to new page" stopProcessing="true">
<match url="^old-page$" />
<action type="Redirect" url="http://example.com/new-page" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Код на стороне сервера
php
header("Location: http://example.com/new-page", true, 301);
exit();
Не разобрались с настройками?
Если у вас возникли трудности при настройке редиректов или другие сложности в обслуживании IT-системы, вы всегда можете заказать у нас администрирование серверов или выполнение разовых задач. Наши специалисты помогут решить технический вопрос и сэкономить средства на сопровождении IT-инфраструктуры.