ПРОЕКТЫ 


  АРХИВ 


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: try_files не редиректит сраз у на последний аргумент?


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: try_files не редиректит сраз у на последний аргумент?
  • From: cronfy <cronfy@xxxxxxxxx>
  • Date: Tue, 19 Oct 2010 23:06:14 +0400
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:mime-version:received:in-reply-to :references:from:date:message-id:subject:to:content-type :content-transfer-encoding; bh=gLUNc1EsnikGHJ07KPCpsDe4c8c2iqmP8GOEuPfiPWE=; b=jgqfyFop582k3Jy5zmDVcDt40fCZAgMhO6j5sLEjiDuhxwGmKh7YxhCF6pfLceCl1V Al77T8A7dmxSsPKyjIdrKm1XlWuhRP1L5qkM5P8s21BzRz/W5FGxPjbCNOll+fNJPvD2 LMgzNlL6enJfikqM1JQkLYAPPG0isURXAeI84=
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type:content-transfer-encoding; b=akcVvAM5252qc9IFZGTecvVK6r6pwuIN310LxXkte0o1V54w/EdOqA1BMUcCLDQ024 CaeyfXEH7mIeG+Qcz8ZJFY4HU8cHL7QW55tSu+d67C7jimlQKeLspoMaJ64MgiIdCQjI 5qsesnF1bfoAVusQ1C4nPkKqoYFv3vN0bSg+4=
  • In-reply-to: <20101019155120.GZ44164@xxxxxxxxxx>
  • References: <AANLkTi=GX=wRGnXyVAWL0sOPONkvFeq1keZiTv7mx5Bd@xxxxxxxxxxxxxx> <20101019155120.GZ44164@xxxxxxxxxx>

>> Не получается осознать алгоритм работы 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 дело
> просто не дойдёт.

Понятно, спасибо. Вопрос вот с чем связан - в перловом обработчике
есть проверка существования файла. Если файл не в кэше, проверка
занимает некоторое время, а воркер в это время блокируется на перле. Я
хотел с помощью try_files "прогреть" кэш ОС, в надежде, что воркер
целиком блокироваться не будет. А как на самом деле - будет также
блокироваться на ФС или обработка параллельных запросов во время
try_files будет идти?



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


 




Copyright © Lexa Software, 1996-2009.