Как лучше обрабатывать 404?

R
На сайте с 25.08.2012
Offline
16
628

Здравствуйте.

Читая про обработку 404 ошибки наткнулся на разные варианты обработки. Так как же лучше делать?

Вариант 1:

header("HTTP/1.х 404 Not Found");

echo 'Что-нибудь остроумное...';

Вариант 2:

header("HTTP/1.х 404 Not Found");

В .htaccess ErrorDocument 404 /404page.html

И еще вопрос.

Обязательно ли писать:

header("HTTP/1.0 404 Not Found");

header("HTTP/1.1 404 Not Found");

Или можно ограничиться header("HTTP/1.х 404 Not Found");?

Artas
На сайте с 01.02.2007
Offline
69
#1

Делайте перенаправление на главную и всё.

Регистрация ООО под ключ без присутствия в ИФНС (http://9280282.ru/регистрация_ооо), внесение изменений в ЕГРЮЛ (http://9280282.ru/внесение_изменений_в_егрюл), юридические адреса (Москва) (http://9280282.ru/юридические_адреса). Лицензии ФСБ, МЧС, ФСТЭК и др. (http://9280282.ru/лицензирование)
R
На сайте с 25.08.2012
Offline
16
#2

А по 2 вопросу кто-нибудь может помочь?

F
На сайте с 17.07.2012
Offline
66
#3
Artas:
Делайте перенаправление на главную и всё.

не советовал бы. лучше чтоб отдавался заголовок 404. лучше уж header("Location: 404.html").

R
На сайте с 25.08.2012
Offline
16
#4
Feetz:
не советовал бы. лучше чтоб отдавался заголовок 404. лучше уж header("Location: 404.html").

Почему не советуете? Объясните если не трудно.

WebAlt
На сайте с 02.12.2007
Offline
266
#5
rubodon:
Почему не советуете? Объясните если не трудно.

http://help.yandex.ru/webmaster/?id=1108949

Soft 404. Одна из распространенных ошибок заключается в замене сообщения об ошибке 404 (страница не найдена) для несуществующих страниц на страницу-заглушку, которая возвращается с кодом ответа 200 (ОК). В этом случае поисковая система считает, что страница с некорректным адресом существует, и не удаляет ее из своей базы. Это приводит к более медленному индексированию полезных страниц на сайте.
R
На сайте с 25.08.2012
Offline
16
#6

Получается, что нужно просто возвращать заголовок со статусом 404 и никуда не перенаправлять?

WebAlt
На сайте с 02.12.2007
Offline
266
#7

Да. 10 букв.

R
На сайте с 25.08.2012
Offline
16
#8

Т.е. первый вариант самый лучший?

header("HTTP/1.х 404 Not Found");
echo 'Что-нибудь остроумное...';
Braindbrigada
На сайте с 10.01.2010
Offline
84
#9

Второй вариант

P
На сайте с 06.01.2009
Offline
601
#10

ТС, как по мне, так если главная обрабатывает все запросы, то при отсутсвии урла, она же, главная, возвращает серверу 404.

header($_SERVER['SERVER_PROTOCOL'] . ' 404 Not Found');

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий