В Битрикс есть встроенная функция для создания редиректа (переадресации) на PHP - это функция LocalRedirect. У этой функции есть три параметра:
LocalRedirect($url, $skip_security_check = false, $status = "302 Found");
- Первый параметр $url (строка) - это относительный адрес страницы сайта, на который происходит перенаправление.
- Второй параметр может принимать значение "false" или "true" и позволяет пропустить проверку на вишинг от модуля безопасноти (если он есть в редакции системы и включен). Необязательный параметр
- Третий параметр $status (строка) - это ответ, который будет возвращать сервер при перенаправлении. Необязательный параметр
В третий параметр можно вписать любые статусы в зависимости от поставленной задачи, к примеру:
- 301 Moved permanently - запрошенный документ был окончательно перенесен на новый адрес
- 302 Moved Temporarily - запрошенный документ временно доступен по другому адресу
Функцию
LocalRedirect можно использовать после подключения служебной части пролога. Продемонстрируем способ сделать переадресацию с текущего скрипта на раздел
/news/
:
<?
// подключение служебной части пролога
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
LocalRedirect('/news/');
// подключение служебной части эпилога
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php");
?>
Если есть необходимость, то можно поставить функцию
LocalRedirect после вывода хидера - она все равно сработает. Произойдёт перенаправление:
<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
LocalRedirect('/news/');
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");
?>