Re: try_files не редиректит сразу на последний аргумент?

Maxim Dounin mdounin на mdounin.ru
Вт Окт 19 19:51:20 MSD 2010


Hello!

On Tue, Oct 19, 2010 at 07:27:01PM +0400, cronfy wrote:

> Добрый вечер.
> 
> Не получается осознать алгоритм работы try_files. Такое впечатление,
> что после того, как он *не нашел* указанные файлы, он продолжает
> обрабатывать директивы из текущего location, а не делает внутренний
> редирект. Имеем такой конфиг:
> 
>         location / {
>             try_files $uri @backend;
> #            return 403;
>         }
> 
>         location @backend {
>           proxy_set_header   Host             $host;
>           proxy_pass         http://127.0.0.1:8091$request_uri;
>         }
> 
> Если return закомментирован, то все работает как описано в
> документации. Но если его раскомментировать, то и на существующие, и
> на несуществующие файлы отдается Forbidden.
> 
> nginx version: nginx/0.8.50
> 
> Что я не так понял?

Директива "return" работает в фазе rewrite, это раньше чем фаза 
try_files.  Поэтому если написано "return 403" - до try_files дело 
просто не дойдёт.

Maxim Dounin



Подробная информация о списке рассылки nginx-ru