Правильна відповідь сервера, код 404 при помилці сторінка не знайдена - Оптимізація сайту (внутрішні
Форум Алаїч'а про SEO → Оптимізація сайту (внутрішні фактори) → Правильна відповідь сервера, код 404 при помилці сторінка не знайдена
Стор.:1
Повідомлень 12
- Lynch
- Я тут новенький
- Карма: 0/0
Тема: Правильна відповідь сервера, код 404 при помилці сторінку не знайдено
Порадьте, будь ласка, як зробити правильну сторінку?
Ситуація така, працюю зараз на DLE 9.6, "якщо сторінка" відсутня видає стандартну помилку dle, проте при перевірці через яндекс веб-майстер - перевірка відповіді сервера, що видає як нормальну сторінку, тобто код 200, пробував кілька варіантів запропонованих у мережі, ні один із них не видає коректної помилки. Один варіант видав навіть код 302 - Знайдено
А 404 помилка запропонована сервером дуже вже вона не правильно оформлена і явно продає послуги хостера. втім, не те що нам необхідно.
Дуже вдячний. З Повагою, Lynch
- DVE
- Тиран
- Карма: 7/0
Re: Правильна відповідь сервера, код 404 при помилці сторінку не знайдено
З пояснення незрозуміло, що треба зробити. Зробити правильну сторінку чи правильну відповідь сервера? Правильну відповідь сервера на неіснуючу сторінку - це 404. 302 - це «переміщено тимчасово».
- Lynch
- Я тут новенький
- Карма: 0/0
Re: Правильна відповідь сервера, код 404 при помилці сторінку не знайдено
Мені потрібно, щоб сервер видавав відповідь з кодом 404 на неіснуючу сторінку на моєму сайті, але при цьому потрібно підсунути не сторінку від хостера, як у моєму випадку, а мою спеціально підготовлену сторінку.
Потрібен результат: Моя сторінка 404(дизайн) та відповідь від сервера 404;
Пробував через .htaccess варіант:
Робимо сторінку для помилок 404, 401, 400, 403, 500 для DataLife Engine. У ".htaccess" шукаємо:
RewriteEngine On Вставляємо вище:
У файлі "engine/engine.php" шукаємо:
switch ($do) Вставляємо нижче:
case "found": if(isset($_GET['400'])) $title="невірний запит (400)"; $ e = 400; >elseif(isset($_GET['401'])) $title="потрібна атворизація (401)"; $ e = 401; >elseif(isset($_GET['403'])) $title="обмеження доступу (403)"; $ e = 403; >elseif(isset($_GET['404'])) $title="файл не знайдений (404)"; $ e = 404; >elseif(isset($_GET['500'])) $title="перезавантаження сервера (500)"; $ e = 500; >else $title="файл не знайдений (404)"; $ e = 404; >
$metatags['title'] = "Назва сайту -";
$tpl->load_template( $e.'.tpl' ); $tpl->compile( 'content' ); break; Не забуваємо створити шаблони 400.tpl, 401.tpl, 403.tpl, 500.tpl, 404.tpl
У результаті вийшло що візуально для людини – це сторінка 404 не знайдено, а для робота – 302 – знайдено – тимчасово переміщено.