ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Rewrite



Hello!

On Wed, Aug 29, 2012 at 01:51:03AM -0400, Hett wrote:

> Привет,
> суть такова,
> Есть каталог images, в нем лежат другие каталоги, например application,
> video
> Приходят запросы
> images/application/x-rar-compressed.png
> есть такое  изображение есть, то отдаем его, если же нету, то отдаем
> изображение images/application/default.png
> 
> На апачи я создавал в images файл .htaccess следующего содержания:
> RewriteEngine On
> RewriteCond %{REQUEST_FILENAME} !-f
> RewriteCond %{REQUEST_FILENAME} !-d
> RewriteRule (.*)/.*\.png$ $1/default.png [L]
> 
> Как это удобнее сделать на nginx? Очень желательно чтобы не добавлялась
> новая location, и именно это меня вгоняет в ступор.

Как-то так должно сработать:

map $uri $dirname {
    ~(?<name>.*)/[^/]+$  $name;
}

location /images/ {
    try_files $uri $dirname/default.png =404;
}

Документация тут:

http://nginx.org/r/map
http://nginx.org/r/try_files;

Maxim Dounin

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.