On Tue, Sep 04, 2007 at 12:28:25AM +0400, Arkadiy Kulev wrote:
> Есть вопрос такой.
> сейчас есть кусок кода вида:
>
> rewrite
> ^/albums/([a-z]+)/[0-9]/[0-9]/[0-9]/[0]*([0-9]*)([0-9])/(.*)/cache/[0]*([0-9]*)-(.*)\.([a-z]*)$
> /albums/$1_cache/$3/$2$3/$6/$5-$6.$7;
> if (!-f $request_filename) {
> rewrite ^/albums/([a-z]+)_cache/[0-9]/[0-9]+//(.*)$ /albums/$1_cache/src/$2;
> .....
>
> если я правильно все понимаю, то rewrite идущие друг за другом
> накладываются друг на друга и в результате исходное значение меняется
> до безумия.
>
> но вдруг я хочу вернуть старое исходное значение и после строчки
> "if (!-f $request_filename) {" работать уже с ним, отменив все
> предыдущие rewrite.
>
> как это сделать?
set $ouri $uri;
... rewrites ...
if (!-f $request_filename) {
rewrite ^ $ouri;
}
--
Игорь Сысоев
http://sysoev.ru