unlex
Новичок
ErrorDocument 404 с mod_rewrite
Похожая тема уже поднималась на форуме, но ответа я так и не нашел.
Суть в следующем. Необходимо создать свою страницу ошибок.
Включен мод реврайт, так что все запросы проходят через index.php. Там контроллер их разбирает и если находит несуществующий параметр выдаёт
В .htaccess прописано ErrorDocument 404 /404.html
В корне лежит 404.html.
Так вот при вводе к примеру /myhost/bhjsbjwb выдает просто чистую страницу, хотя заголовки уходят корректные
HTTP/1.x 404 Not Found
Date: Tue, 24 Feb 2009 14:03:24 GMT
Server: Apache/2.2.10 (Win32) PHP/5.2.6
X-Powered-By: PHP/5.2.6
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Length: 0
Connection: close
Content-Type: text/html; charset=UTF-8
Если отключить mod_rewrite то все нормально - происходит выдача содержимого 404.html.
Привожу содержимое .htaccess
Чувствую, что делаю что-то не так. Подскажите что )
Похожая тема уже поднималась на форуме, но ответа я так и не нашел.
Суть в следующем. Необходимо создать свою страницу ошибок.
Включен мод реврайт, так что все запросы проходят через index.php. Там контроллер их разбирает и если находит несуществующий параметр выдаёт
PHP:
header("HTTP/1.0 404 Not Found");exit;
В корне лежит 404.html.
Так вот при вводе к примеру /myhost/bhjsbjwb выдает просто чистую страницу, хотя заголовки уходят корректные
HTTP/1.x 404 Not Found
Date: Tue, 24 Feb 2009 14:03:24 GMT
Server: Apache/2.2.10 (Win32) PHP/5.2.6
X-Powered-By: PHP/5.2.6
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Length: 0
Connection: close
Content-Type: text/html; charset=UTF-8
Если отключить mod_rewrite то все нормально - происходит выдача содержимого 404.html.
Привожу содержимое .htaccess
PHP:
ErrorDocument 404 /404.html
RewriteEngine on
Options +FollowSymlinks
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA]