ErrorDocument только тогда, когда реферер пуст

Я хочу добавить в свой .htaccess ErrorDocument 404 /error-404.php (и т. д.), но только тогда, когда реферер пуст. Таким образом, если пользователь неправильно ввел URL-адрес, он получит ошибку-404.php, но когда я связал изображение на своей странице, а оно не существует, появляется ошибка по умолчанию 404.

Таким образом, я экономлю пропускную способность, не загружая HTML + CSS + материал, когда пользователь не увидит ошибку.

Но я не знаю, как это сделать :(

Заранее спасибо :)


person xotihcan    schedule 18.06.2012    source источник


Ответы (1)


Попробуй это:

RewriteCond %{HTTP_REFERER} ^$
RewriteRule !error-404.php /error-404.php [L]

Не устанавливайте ErrorDocument в файл php, иначе ваш код 404 по умолчанию никогда не появится. Обратите внимание, что это не вернет код 404 по умолчанию, ваш error-404.php должен сделать это, используя что-то вроде функцию header().

person Jon Lin    schedule 18.06.2012