ПРОЕКТЫ 


  АРХИВ 


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 <nginx-ru@xxxxxxxxx>
  • Subject: Re: Использование try_files
  • From: Alexander Moskalenko <alexander.moskalenko@xxxxxxxxx>
  • Date: Fri, 6 Sep 2013 10:55:10 +0300
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; bh=EE5bqRmbbT3tUYjoA1RRS0fidHC15CSS4xkF6EWfvkI=; b=N3MTpzfAJDtwRfhV7kfTF32Lq7WisDodAMa9x+lpy/zkDmDI8LEXlg5hS7hRJwqcd3 itCsBwv9O1qsQk5Rvl7Rnp9VvxAZtfV5e2JzvbZ0QDKOGbxVPHobQSkoKEL3XCuyP98E Uu40mg7M2mv2VRLZtYrynhEmZnsYEzfTGCyH3OTPZE1o0Cli8tGAl2aJdjte4rfictvP zfQBZn3Memyrm1w4oMIc46DT13ylkd6ciSXTZGegTJ8RPhe2dz0wLDl5C7gx92CiaHoN hUvVi8jQNwa1wRK9pUDmu783r6e0c7648D+SrP/+UTpcSZNVbB/GijDK3RJv8XNj/IOm SdBw==
  • In-reply-to: <CANA-tskQh6vH=uzbSYeBvf2heuksBnOHHbDU6Km4j2+GZNn52Q@mail.gmail.com>
  • References: <CANA-tskXnMX4XQTGUs9SZJ9ZN_ytu4AEYb9Ukip6q6MpgjrKeA@mail.gmail.com> <CANA-tskQh6vH=uzbSYeBvf2heuksBnOHHbDU6Km4j2+GZNn52Q@mail.gmail.com>

location "^/(?<filename>.*)\.(php|html)$" {

    fastcgi_pass   ...;

    fastcgi_param  SCRIPT_FILENAME  /path/to/index.php;
    fastcgi_param  SCRIPT_NAME      /index.php;
    fastcgi_param  QUERY_STRING     key=$filename;

}

2013/9/6 Sargas <sargaskn@xxxxxxxxx>:
> Сейчас используется
>
> if (!-e $request_filename) {
>  rewrite ^/(.*)\.(php|html)$ /index.php?key=$1 break;
> }
>
> Хочется без if'а
>
>
>
> 4 сентября 2013 г., 3:25 пользователь Sargas <sargaskn@xxxxxxxxx> написал:
>
>> Приветствую.
>>
>> Подскажите, пожалуйста как переписать апачевские реврайты
>>
>> RewriteCond %{REQUEST_FILENAME} !-d
>> RewriteCond %{REQUEST_FILENAME} !-f
>> RewriteRule ^(.*)\.(php|html)$ /index.php?key=$1 [L,QSA]
>>
>>
>> на nginx/FastCGI с использованием try_files
>>
>> В документации (http://sysoev.ru/nginx/docs/faq.html) есть пример с
>> именованным локейшеном
>>
>> location / {
>>     try_files      $uri  $uri/  @drupal;
>> }
>>
>> location @drupal {
>>     fastcgi_pass   ...;
>>
>>     fastcgi_param  SCRIPT_FILENAME  /path/to/index.php;
>>     fastcgi_param  SCRIPT_NAME      /index.php;
>>     fastcgi_param  QUERY_STRING     q=$uri&$args;
>>
>>     ... прочие fastcgi_param
>> }
>>
>> Вопрос в том как в QUERY_STRING передать имя файла, но без его расширения
>> (php|html).
>>
>> Чтобы работали подобные ссылки
>> http://www.example.com/channels.php  <=>
>> http://www.example.com/index.php?key=channels
>>
>>
>>
>> И вопрос по директиве accept_mutex
>> http://nginx.org/ru/docs/ngx_core_module.html#accept_mutex
>> Судя по описанию выключать её не рекомендуется. А в какой ситуации может
>> понадобится её выключить? :)
>
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@xxxxxxxxx
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.