php: header 404 и ErrorDocument в .htaccess
Отправляя
header("HTTP/1.0 404 Not Found"); exit();
в .htaccess
ErrorDocument 404 /404.php
работать не будет.
Можно отправлять заголовок
header("Location:/404.php");
но тогда ответ будет HTTP/1.1 302 Moved Temporarily
Решение: содержимое файла 404.php переносим в функцию
function Print404() { echo '<h1>404</h1><a href="/">back</a>'; }
и в коде:
header("HTTP/1.0 404 Not Found"); Print404(); exit();