Покажите шаблон, пожалуйста. Конструкция 404 страницы правильная.
Была такая проблема на одном проекте, программисты или сеошники намудрили что-то.
Я вышел из ситуации, добавив такой универсальный обработчик в init.php
AddEventHandler('main', 'OnEpilog', '_Check404Error', 1);
function _Check404Error(){
if(defined('ERROR_404') && ERROR_404=='Y' || CHTTP::GetLastStatus() == "404 Not Found"){
GLOBAL $APPLICATION;
$APPLICATION->RestartBuffer();
$APPLICATION->SetPageProperty("keywords", "Страница не найдена");
$APPLICATION->SetPageProperty("title", "Страница не найдена");
$APPLICATION->SetPageProperty("description", "Страница не найдена");
$APPLICATION->SetPageProperty("ADDITIONAL_TITLE", "Страница не найдена"); // Это кастомная вещь, если тайтл переопреелен, как в моем случае - вам, возможно не нужно.
$APPLICATION->SetTitle("Страница не найдена");
require $_SERVER['DOCUMENT_ROOT'].SITE_TEMPLATE_PATH.'/header.php';
require $_SERVER['DOCUMENT_ROOT'].'/404.php';
require $_SERVER['DOCUMENT_ROOT'].SITE_TEMPLATE_PATH.'/footer.php';
}
}
Сайт агентства, если кому потребуется помощь
edvancemedia.com