В ситуациях, когда нужно, чтобы пользователь перешел по ссылке и попал на другой URL-адрес, на помощь приходит редирект. В качестве примера можно привести следующее: на сайте проходит временная акция. Пока действует предложение, потенциальный клиент будет перенаправляться на страницу акции. Или же идет работа по изменению внешнего вида сайта, но пока ведутся техничесие работы, нужно чтобы сайт работал. Для этого можно скопировать его прежний вариант на другой домен или поддомен. В таких случаях можно использовать настройку редиректа.
Редирект — это перенаправление пользователя с одной страницы на другую. Редирект можно настроить как на разные страницы одного сайта, так и на страницу другого сайта.
Основные виды редиректов
Редирект может понадобиться в следующих ситуациях:
Переадресацию можно настроить несколькими способами:
PHP — серверный язык программирования. Это значит, что переадресация будет срабатывать не в коде страницы, а в скрипте, который размещен на сервере. Благодаря этому снижается восприимчивость к фильтрам поисковых систем. А это в свою очередь добавление в код индексного файла скрипт перенаправления. HTML — это язык разметки веб-страниц. Перенаправление можно сделать с помощью метатега (используемые для передачи структурированных метаданных, как правило, размещаются в разделе <head> веб-документа) , и редирект будет работать именно через код страницы.
Предположим, вы сделали редирект со страницы host.php на host1.php. Когда пользователь откроет страницу с редиректом, в системе произойдёт следующее:
Прописывать редирект на сайт в PHP нужно в индексном файле. Чаще всего он называется index.php. Для настройки вам понадобится функция header( ). Она выглядит так:
header($header)
Где $header — строка HTTP-заголовка, который вы будете использовать. Для редиректа нужно использовать заголовок Location — он указывает на адрес целевого сайта.
Чтобы настроить редирект PHP:
<?php // index.php header(“Location: http://site.ru/index1.php”); exit( ); ?>
Где http://site.ru/index1.php — ссылка на индексный файл страницы, на которую ведёт редирект. Если на конечном сайте установлен SSL-сертификат, вместо http:// укажите https://. После этого сохраните изменения:
<?php // index.phpц header("Location: http://site.ru/index1.php"); exit( ); ?>
Иногда нужно, чтобы пользователь попал на страницу и только спустя несколько секунд перешел на конечный сайт. Такое перенаправление можно настроить в индексном файле с помощью функции sleep()
.
Чтобы настроить переадресацию с задержкой, откройте индексный файл страницы, с которой нужно сделать редирект. Добавьте строку:
sleep(5);
5 — время ожидания в секундах. Полный код редиректа с задержкой будет выглядеть так:
<?php // index.php sleep (5); header("Location: http://site.ru/index1.php"); exit( ); ?>
Удачной работы! Если возникнут вопросы - напишите нам, пожалуйста, тикет из