Re: Наследование fastcgi_params

Igor Sysoev igor на sysoev.ru
Ср Июн 8 07:30:54 MSD 2011


On Wed, Jun 08, 2011 at 02:47:56AM +0300, Alexander Moskalenko wrote:
> Приветствую!
> 
> есть конфиг:
> 
> server {
>     listen       80;
>     server_name  _;
> 
>     root /home/user/public_html;
>     index index.php;
>     include fastcgi_params;
>     fastcgi_index  index.php;
>     fastcgi_param  SERVER_NAME      $host;
>     fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
>     fastcgi_param  SCRIPT_URL       $uri;
>     fastcgi_param  SCRIPT_URI       $scheme://$host$uri;
> 
>     location / {
>         try_files $uri $uri/ @fallback;
>     }
> 
> 
>     location ~* \.php$ {
>         fastcgi_pass   fpm;
>     }
> 
>     location ~ /\.ht {
>         return 404;
>     }
> 
>     location @fallback {
> include fastcgi_params;
> fastcgi_param  SCRIPT_FILENAME  $document_root/index.php;
> fastcgi_param  QUERY_STRING     $uri;
>         fastcgi_pass   fpm;
>     }
> 
> }
> 
> если в локейшене @fallback не указать:
> include fastcgi_params;
> 
> то параметры определенные в секции server (которые судя по документации
> должны наследоваться) не наследуются в этот локейшен
> при этом для локейшена ~* \.php$ они наследуются
> 
> так и должно быть?
> поведение наблюдается в версиях 0.8.х и 1.0.х, в 0.9.х не проверял

Да.

http://sysoev.ru/nginx/docs/http/ngx_http_fastcgi_module.html#fastcgi_param

Директивы наследуются с предыдущего уровня при условии,
что на данном уровне не описаны свои директивы fastcgi_param. 


-- 
Igor Sysoev



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