Пользовательская страница 404 отправляет 200 кодов состояния - PullRequest
0 голосов
/ 05 января 2010

404 Ошибка страницы 200 OK Заголовок ошибки:

Ответ сервера:
http://www.example.com/err404.html HTTP
Код состояния: HTTP / 1.1 200 OK

И это должно дать 404, говорит мой клиент.

Ответы [ 2 ]

5 голосов
/ 05 января 2010

Я предполагаю, что вы используете ErrorDocument с абсолютным URL-адресом, таким как:

ErrorDocument 404 http://example.com/err404.html

В этом случае сервер отвечает перенаправлением 302 с http://example.com/err404.html в качестве местоположения. Если затем запрашивается этот URL, ваш сервер отправляет 200 код состояния, как вы испытали.

Попробуйте использовать только абсолютный путь URL:

ErrorDocument 404 /err404.html
2 голосов
/ 05 января 2010

Вы получите статус 200, если страница ошибки была фактическим запросом (т.е. страница ошибки запрашивается непосредственно адресной строкой браузера, закладкой, перенаправлением в PHP и т. Д. ). Вы получите статус 404, если страница с ошибкой была возвращена самим веб-сервером, когда на самом деле есть средства недопустимого запроса, или когда она динамически включена PHP вместе с header("HTTP/1.1 404 Not Found");. На HTTP-сервере Apache расположение настраиваемых страниц ошибок настраивается где-то в httpd.conf.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...