Re: Заглушка вместо отсутствующей картинки.
Maxim Dounin
mdounin at mdounin.ru
Sun Oct 27 22:29:41 UTC 2013
Hello!
On Sun, Oct 27, 2013 at 06:19:39PM -0400, Vipper wrote:
> Спасибо за ответ.
> Но что-то не очень получается....
>
> Так как Вы написали вообще не работает.
> С горем пополам работает вот такой вариант:
>
> location ~ /photos/ {
> root /var/www/super/html;
> error_page 404 /photos/no_photo.gif;
> }
>
> location = /photos/no_photo.gif {
> root /var/www/super/html;
> expires max;
> }
Начните с того, что пропишите root на уровне server{}, чтобы не
приходилось его дублировать в каждом location'е.
Кроме того, крайне рекомендуется либо убрать модификатор "~" из
"location /photos/", либо, если есть другие регулярные выражения,
которые не следует обрабатывать для файлов из /photos/,
использовать модификатор "^~".
Подробности тут:
http://nginx.org/r/location/ru
> Но в error логе на каждое обращение к файлу сообщение, что он не найден.
> А с Мозилы аж по 2 записи. Этого я вообще понять не могу....
> Может есть еще варианты как можно реализовать такую задачу?
Данная вам рекомендация решает ту задачу, которую вы просили
помочь решить - чтобы при отсутствии картинки выдавалась заглушка.
Если хочется, чтобы об ошибках не писалось в лог - следует
воспользоваться директивой log_not_found, см. тут:
http://nginx.org/r/log_not_found/ru
--
Maxim Dounin
http://nginx.org/en/donation.html
Подробная информация о списке рассылки nginx-ru