Чтобы перенаправить посетителя на другую страницу (особенно полезно в условном цикле), просто используйте следующий код:
<?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, не будут учитывать перенаправление при индексировании.
Если вы хотите уведомить поисковые системы о том, что страница была постоянно перемещена в другое место, используйте следующий код:
<?
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()
функции exit()
, чтобы уменьшить нагрузку на сервер:
<?
header('Status: 301 Moved Permanently', false, 301);
header('Location: address');
exit();
?>