AddEventHandler("main", "OnEpilog", function () { global $APPLICATION; // Если уже 404, не повторяем if (defined("ERROR_404") && ERROR_404 === "Y") { return; } // Исключаем сам файл 404 if (strpos($APPLICATION->GetCurPage(), '/404.php') !== false) { return; } // Проверяем статус ответа $status = http_response_code(); if ($status === 404 || $APPLICATION->GetCurPage() === '/404.php') { CHTTP::SetStatus("404 Not Found"); @define("ERROR_404", "Y"); $APPLICATION->RestartBuffer(); include($_SERVER["DOCUMENT_ROOT"] . "/404.php"); die(); } // Если компонент не отработал и заголовок пустой $buffer = $APPLICATION->GetTitle(); if (empty($buffer) && !defined("BX_BUFFER_USED")) { CHTTP::SetStatus("404 Not Found"); @define("ERROR_404", "Y"); $APPLICATION->RestartBuffer(); include($_SERVER["DOCUMENT_ROOT"] . "/404.php"); die(); } });
[Error] Class 'CIBlock' not found (0) /var/www/html/local/templates/main/header.php:15 #0: include_once /var/www/html/bitrix/modules/main/include/prolog_after.php:96 #1: require(string) /var/www/html/bitrix/modules/main/include/prolog.php:11 #2: require_once(string) /var/www/html/bitrix/header.php:1 #3: require(string) /var/www/html/cabinet/register/index.php:2 #4: include_once(string) /var/www/html/bitrix/modules/main/include/urlrewrite.php:159 #5: include_once(string) /var/www/html/bitrix/urlrewrite.php:2