• Автор:

    Flesha
  • Добавлено:

    фев 03, 2015
  • Комментариев:

    0
  • Просмотров:

    3079

404 Not Found - Своя страница ошибки

404 Not Found - Своя страница ошибки

Страница 404 или 404 Not Found — это ответ веб-сервера о том, что запрошенный урл на сайте отсутствует. Посетителям сайтов довольно часто приходится наблюдать такую ошибку, особенно если он опечатывался в адресе страницы, либо ссылка изначально была битой.

По умолчанию в Dle, в случаи ошибки выводится шаблонная страница "info.tpl", т.е подгружается основной шаблон main.tpl и info.tpl.
Реализация выгодная в плане задержки пользователя, юзер попав на такую страницу скорее всего сразу не закроет страницу, а вернётся на главную или кликнет на навигацию. Но наверняка найдутся люди которые захотят видеть на своём сайте старомодную статическую html страничку.

Важно что бы такая страница отдавала ответ серверу 404, а не 200 OK или 302 Found
В противном случае поисковые системы могут посчитать эти страницы за существующие и добавить в индекс много дублей одной странички.
Во общем вношу свой вклад в эту тему.

В файле "engine/modules/functions.php" ищем:
function msgbox($title, $text) {
global $tpl;


Заменяем на:
function msgbox($title, $text) {
global $tpl, $lang;
if( in_array('HTTP/1.0 404 Not Found', headers_list()) || $text == $lang['news_err_27'] ) {
require_once ROOT_DIR.'/404.html';
die();
}else{
$tplName = 'info.tpl';
}


Готово.
Не забудьте создать в корне страницу 404.html.
Вернуться
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.