есть небольшая функция, которая ловит ошибки в переменных $_POST, $_GET, $_COOKIES, $_FILE и пр, так же используется при непридвиденых обстоятельствах (mysql_num_rows($sq) == 0)) при том, что результат должен быть получен 100%, т.е. некая обвертка ошибок. Она пишет лог и перенаправляет на 404.php
404.php
1. ZeiZ - 16 Марта, 2011 - 00:58:46 - перейти к сообщению
первый вариант вроде правильный, но и 1-ый и 2-ой попробовал - косяк.
браузер отвечает 200-OK! и пустая страница.
Как правильно написать header???
Спасибо
P.S. По логам чаще всего "спотыкаются" поисковики, более того они индексируют эти страницы. Особенно рамблер-бот, который, если видит id, то начинает бродить по ней, вплоть до id=1500, хотя реальный ИД - (например) 3,15,18,24,25-32,105. при остальных идёт редирект на 404.php, который он индексирует, хотя и пустой, но "HTTP/1.1 200 OK" вместо 404.
(Добавление)
PP.S. Не совсем в курсе http состояния протокола, но можно ли без особых костылей сделать: скажем поисковикам HTTP/1.0 404 Not Found и при этом вывести некий шаблон с html содержанием а-ля
http://slando[dot]ru/0[dot]html или http://habrahabr[dot]ru/1/ - вот такие заглушки.
PPP.S. slando - codeigniter, habra - livestreet CMS + Sphinx, если кому интересно и кто не знает =)