Изображение по умолчанию (резервное) Изображение с .htaccess? - PullRequest
9 голосов
/ 07 декабря 2009

Мне любопытно, можно ли использовать .htaccess для показа изображения по умолчанию, когда запрашивается конкретное изображение, которого не существует ( примечание: только запросы изображений должны вызывать это поведение ) , Я знаю, что мог бы сделать это с помощью PHP, передавая изображения через скрипт, но мне более любопытно, если это можно сделать с помощью .htaccess.

Предположим, я запрашиваю /thumbnails/010.gif, который не существует. Как я мог получить .htaccess, чтобы подать /thumbnails/default.gif вместо него?

Ответы [ 3 ]

10 голосов
/ 07 декабря 2009

Я верю, что это сработает для вас. Поместите этот .htaccess в каталог с миниатюрами, и любые URI, которые находятся ниже / thumbnails, не существуют, будут направлены на /thumbnails/default.gif

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ default.gif [NC,L]
2 голосов
/ 07 декабря 2009

Поскольку вы просто хотите применить его к / thumbnails / :

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^thumbnails/ thumbnails/default.gif
1 голос
/ 07 декабря 2009

Если вы отправляете только изображений из этого каталога, вы можете использовать оператор ErrorDocument , например:

ErrorDocument 404 /thumbnails/default.gif

/thumbnails должно быть относительно вашего DocumentRoot.

Я проверил это с FF, и он делает, как обещал. Однако могут возникнуть проблемы с тем, что IE «Не отображать 404, которые меньше, чем несколько сотен килобайт» #%? $!

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