Подскажите правило для редиректа

Andrew Kopeyko kaa at zvuki.ru
Fri Apr 3 20:13:20 MSD 2009


On Fri, 3 Apr 2009, Andrew Kopeyko wrote:

> On Fri, 3 Apr 2009, Peter wrote:
>
>> Есть папка foto с картинками, названия файлов вида 123456.jpg и
>> sm_123456.jpg
>> Хочу разложить все картинки в две папки sm и big, а внутри этих папок ещё 
>> по
>> 10 папкам - 0, 1, 2, 3... 9 по принципу "название папки = последняя цифра в
>> названии файла". Т.е. обращения к файлу /foto/123456.jpg должны
>> редиректиться (с 302-м редиректом)  на /foto/big/6/123456.jpg, а
>> /foto/sm_123456.jpg на /foto/sm/6/sm_123456.jpg
>
> Зачем внешний редирект, когда можно обойтись rewrite'ом?
>
>> Подскажите, как записать такую конструкцию?
>
> Как-то так :

sorry, не проверил после copy-paste

> location /foto/ {
-    rewrite  (.*)\/([0-9]{5})(([0-9])\.jpg  $1/big/$3/$2$3.jpg  break;
+    rewrite  (.*)\/([0-9]{5})([0-9])\.jpg  $1/big/$3/$2$3.jpg  break;
-    rewrite  (.*)\/sm_([0-9]{5})(([0-9])\.jpg  $1/sm/$3/sm_$2$3.jpg  break;
+    rewrite  (.*)\/sm_([0-9]{5})([0-9])\.jpg  $1/sm/$3/sm_$2$3.jpg  break;
>    ...
> }


-- 
Best regards,
Andrew Kopeyko <kaa at zvuki.ru>






More information about the nginx-ru mailing list