Перенаправление сайтов (Redirect)

Автор: Legenda , 21 июня 2017

HTML

Самый простой способ перенаправить посетителя с одного сайта на другой — воспользоваться средствами HTML. Нам нужен мета-тег с атрибутом http-equiv, которому присвоим значение refresh, а так же атрибут content, в котором зададим время (тайм-аут) и адрес, на который ссылаемся. Добавим на страницу внутри элемента head следующий код:

<meta http-equiv="refresh" content="0; URL='http://legenda-rin.ru/'" />

где 0 - время до начала перехода в секундах (в нашем случае переход будет осуществлён сразу), а http://legenda-rin.ru/ - сайт, на который будет переброшен пользователь.

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

JavaScript

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

<script type="text/javascript">
 location.replace("http://legenda-rin.ru/");
</script>

А для установки тайм-аута (например, для информирования пользователей о причине перенаправления) воспользуемся другим кодом:

<script type="text/javascript">
 setTimeout('location.replace("http://legenda-rin.ru/")', 10000);
</script>

где 10000 - миллисекунды. 1 секунда = 1000 миллисекунд, значит в нашем примере мы установили задержку в 10 секунд.

Пользуясь этим методом надо понимать, что если у пользователя отключён JavaScript, то сайт никуда его не перебросит! Скрипт попросту не сработает.

PHP

Пользуясь средствами PHP проще всего использовать функцию header.

<?php
 header('Location: http://legenda-rin.ru/', true, 301);
 exit();
?>

где true заменяет ранее установленный заголовок, а 301 меняет код ответа, так как по умолчанию код 302 (временное перемещение).

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

<?php
  header('Refresh: 10; URL=http://legenda-rin.ru/');
  echo 'Адрес сайта изменился! Через 10 секунд вы будете перенаправлены на новый сайт автоматически.';
  exit;
?>

Более подробно про перенаправления можно прочитать в статье на Хабрахабре. При подготовке статьи также были использованы материалы сайтов BloGGood и WebCraft.

Комментарии