Чтобы перенаправить посетителя на другую страницу (особенно полезно в условном цикле), просто используйте следующий код:
<?php
header('Location: mypage.php');
?>
В этом случае mypage.php
- это адрес страницы, на которую вы хотите перенаправить посетителей. Этот адрес может быть абсолютным и может также включать параметры в следующем формате: mypage.php?param1=val1&m2=val2)
Относительный / абсолютный путь
При работе с относительными или абсолютными путями идеально выбирать абсолютный путь от корня сервера (DOCUMENT_ROOT). Используйте следующий формат:
<?php
header('Location: /directory/mypage.php');
?>
Если целевая страница когда-либо находится на другом сервере, вы включаете полный URL:
<?php
header('Location: http://www.ccm.net/forum/');
?>
Заголовки HTTP
В соответствии с протоколом HTTP заголовки HTTP должны отправляться before
любым типом содержимого. Это означает, что перед заголовком никогда не следует отправлять символы - даже пустое место!
Временные / постоянные перенаправления
По умолчанию представленный выше тип перенаправления является временным. Это означает, что поисковые системы, такие как Google Search, не будут учитывать перенаправление при индексировании.
Если вы хотите уведомить поисковые системы о том, что страница была навсегда перемещена в другое место, используйте следующий код:
<?
header('Status: 301 Moved Permanently', false, 301);
header('Location: new_address');
?>
Например, на этой странице есть следующий код:
<?
header('Status: 301 Moved Permanently', false, 301);
header('Location: /pc/imprimante.php3');
exit();
?>
Когда вы нажимаете на ссылку выше, вы автоматически перенаправляетесь на эту страницу. Более того, это постоянное перенаправление (Статус: 301 Перемещено навсегда). Итак, если вы введете первый URL-адрес в Google, вы автоматически будете перенаправлены на вторую, перенаправленную ссылку.
Интерпретация кода PHP
Код PHP, расположенный после header (), будет интерпретирован сервером, даже если посетитель перейдет по адресу, указанному в перенаправлении. В большинстве случаев это означает, что вам нужен метод, выполняющий функцию header()
функции exit()
, чтобы уменьшить нагрузку на сервер:
<?
header('Status: 301 Moved Permanently', false, 301);
header('Location: address');
exit();
?>
person
Star
schedule
13.02.2018
protection from unauthorized users
через перенаправление; это не то, как надо делать;) - person Strae   schedule 27.05.2011