Устанавливаем свою страницу ошибки 404
Своя страничка 404.
Для начала давайте узнаем. Что такое страница 404?
Ошибка 404 или Not Found («не найдено» ) стандартный код ответа HTTP о том, что клиент был в состоянии общаться с сервером, но сервер не может найти данные согласно запросу.
Ошибку 404 не следует путать с ошибкой «Сервер не найден» или иными ошибками, указывающими на ограничение доступа к серверу.
Ошибка 404 означает, что запрашиваемый ресурс может быть доступен в будущем, что однако не гарантирует наличие прежнего содержания.
Пользователи наиболее часто сталкиваются с ошибкой 404 при посещении т. н. битых или мёртвых ссылок. Т. о. делая ошибку 404 одной из наиболее узнаваемых ошибок в сети Интернет.
На сколько я знаю в DLE такое страницы нет, и когда пользователь переходит по битой ссылке, его перенаправляет на 'дефолтную' страницу 404 хостинг провайдера на котором установлен сайт. Это не очень красиво. Будем решать эту проблему(в DLE).
Установка
Открываем файл .htaccess в корне сайта и ищем в нем:
RewriteEngine On
Под этой строкой вставляем:
ErrorDocument 404 /404.html
Вот и всё! теперь при переходе по битым ссылкам пользователя будет перекидывать на вашу страницу 404, а не на страницу хост провайдера.
Теперь давайте применим эту страницу для несуществующих или удаленных новостей на сайте.
Открываем файл /engine/modules/show.full.php и ищем:
elseif( !$news_found ) {
@header( "HTTP/1.0 404 Not Found" );
msgbox( $lang['all_err_1'], $lang['news_err_12'] );
}
Заменяем эти строки на:elseif( ! $news_found ) {
@header("HTTP/1.0 404 Not Found");
@header("Status: 404 Not Found");
@require_once($_SERVER['DOCUMENT_ROOT'].'/404.html');
exit();
}
Как-то так :blush:
Данная тема еще будет развиваться!
В последних версиях DLE в частности 13.х есть опция Использовать отдельную страницу для 404 ошибки
При включении данной опции, в случае если скрипту нужно вывести сообщение о том, что отсутствует нужный контент, он будет использовать не встроенное системное сообщение, а отдельную страницу, которую вам нужно расположить в корне вашего сайта и именем 404.html, т.е. ваша страница должна располагаться например по адресу http://yoursite.com/404.html
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.