nginx inclui ordem fastcgi_params

3

quando eu tenho algo assim:

location ~ .php$ { ## Execute PHP scripts
    if (!-e $request_filename) { rewrite / /index.php last; } ## Catch 404s that try_files miss

    expires        off; ## Do not cache dynamic content
    include        fastcgi_params; ## See /etc/nginx/fastcgi_params
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param  ID_DEVELOPER_MODE 1;
}

é importante onde colocar a diretiva include? porque o arquivo / etc / nginx / fastcgi_params já tem uma declaração SCRIPT_FILENAME dentro.

    
por Kevin Horst 17.12.2015 / 10:38

1 resposta

0

A diretiva fastcgi_param é documentada aqui . E, embora seja claro em relação à herança, não é claro sobre a configuração do mesmo parâmetro mais de uma vez (no mesmo nível).

Por experiência, parece que nginx silenciosamente sobrescreve um valor anterior no mesmo nível.

Portanto, a resposta à sua pergunta é colocar a diretiva include antes de todas as diretivas fastcgi_param que tenham prioridade.

    
por 17.12.2015 / 16:50

Tags