ПРОЕКТЫ 


  АРХИВ 


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: "Alex, the Marrch Ca'at" <marrch.caat@xxxxxxxxx>
  • Date: Wed, 5 Aug 2009 13:36:04 +0400
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=4CQO3fReDFsXoEcsiMhprVWFWDpOcrtsFGIdXvMyHFg=; b=rYI2XpYxW84zTQeF+PUgSiFccRsIrxbLSJXfQh5dy1dP8DgkBytwwlfHj4XJQ5qHQW bpNUUp1GN5JEsjoY3jipVeU/+P62bTP/EPpkrEfKoaWciG2UqZqIn8nb8NoltswgTepg cZq8pLL3p/U1zlOwq0syLQ28ILgSq3wqWanuM=
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=BVuXtyvtF/OJtQdvv1xSCO4GbXHpD9PeTq1qY+mihyIrWahdF7k2J9yfuNiNKkc49m /WIGt4r5qOtOpG/CEpmtTD2Ml1EDUv7+uMsO08sXesiNlpENBAmup1F8a4H7fjDyigaj BtAOR4ONMbBKCAY5YKAF6B9L1UrPO+0lj/vB8=
  • In-reply-to: <20090805090335.GC23100@xxxxxxxxxxxxx>
  • References: <20090805125007.5c1c9b64.baz@xxxxxxx> <20090805090335.GC23100@xxxxxxxxxxxxx>

Игорь, но это ведь ничего не объясняет! Как можно пользоваться в таком
случае средствами, которые даже в самых примитивных и очевидных
ситуациях не ясно как сработают?!

Вы сами-то понимаете, почему наличие if-а в данном случае влияет на
поведение try-files?? Если да - то объясните, пожалуйста!

С уважением -
Алекс Марртовский.

2009/8/5 Igor Sysoev <is@xxxxxxxxxxxxx>:
> On Wed, Aug 05, 2009 at 12:50:07PM +0400, Alexey Bazhin wrote:
>
>> Здравствуйте!
>>
>> Решил воспользоваться директивой try_files и тут же возникли вопросы
>> по ее повидению.
>>
>> Верия nginx 0.7.61, короткий тестовый конфиг такой:
>>
>> worker_processes  1;
>> events {
>>  worker_connections 1024;
>> }
>>
>> http {
>>  include mime.types;
>>  default_type application/octet-stream;
>>  server {
>>   listen 80;
>>   server_name localhost;
>>
>>   location / {
>>    if ($uri ~ .*) {
>>     set $a a;
>>    }
>>    root /usr/local/nginx/html;
>>    try_files /test.txt /index2.html /index.html =403;
>>   }
>>
>>  }
>> }
>>
>> Все три файла указанных в try_files существуют в /usr/local/nginx/html.
>> При запросе корня я получаю index.html, если закомментировать if то
>> получаю index2.html. А наскольно я понял из документации я должен
>> получать test.txt, это так? И почему на результат влияет наличие if-а
>> который ничего не меняет?
>
> Потому что if - это невидимые грабли.
>
> А конструкции
>    "if ($uri ~ ..."
> нужно заменять на
>    "location ~ ..."
>
> В такой
>
>   location / {
>       root /usr/local/nginx/html;
>       try_files /test.txt /index2.html /index.html =403;
>   }
>
> с существующим /usr/local/nginx/html/test.txt у меня на любой запрос
> выдаются содержимое test.txt.
>
>
> --
> Игорь Сысоев
> http://sysoev.ru
>
>


 




Copyright © Lexa Software, 1996-2009.