Re: fcgi document_root в 1.1.8

Andrey Korolyov xdel на quake.ru
Чт Ноя 24 10:20:41 UTC 2011


Прошу прощения, у меня во время во время цикла ребилд-установка пакета
переписался fastcgi_params с оригинального на дистрибутивный(debian
unstable), проблема в нем.

2011/11/24 Andrey Korolyov <xdel at quake.ru>:
> fastcgi_params изначально был из тарболла нжинкса(он совпадает с тем,
> который идет в пакете), причем SCRIPT_FILENAME может как включать в
> себя $document_root, так и нет - поведение не меняется(что, в общем,
> ожидаемо, ему браться неоткуда).  Из дебаг лога видно, что
> происходящие странности - на стороне нжинкса, почему-то оверрайдится
> упомянутая переменная.
>
> 2011/11/24 Валентин Бартенев <ne at vbart.ru>:
>> On Thursday 24 November 2011 00:02:45 Andrey Korolyov wrote:
>>> Добрый вечер,
>>>
>>> сервер следующего вида отдает 404, не передавая корректно параметр
>>> SCRIPT_FILENAME:
>>>
>>>
>>>         server {
>>> .....
>>>                 location / {
>>>                         root /usr/share/zabbix;
>>>                         index index.php;
>>>                 }
>>>                         location ~ \.php$ {
>>>                                 fastcgi_param SCRIPT_FILENAME
>>> /usr/share/zabbix$fastcgi_script_name;
>>>                                 include fastcgi_params;
>>>                       }
>>>         }
>>> .
>> [...]
>>
>> У меня не получилось воспроизвести проблему. По крайней мере
>> SCRIPT_FILENAME и другие параметры передаются корректно.
>>
>> Содержимое fastcgi_params еще не мешало бы посмотреть.
>>
>> [...]
>>>
>>> В аттаче - два стрейса, для первого и второго случаев. Баг минорный,
>>> потому что установка root сразу внутри директивы server решает
>>> проблему, но поскольку достаточно большой процент конфигураций fastcgi
>>> используют вместо глобально определенного $document_root хардкоднутый
>>> путь, как выше, поправить поведение наверняка стоит.
>> [...]
>>
>> Я так понимаю, что это strace php, причем в обоих случаях видно, что
>> SCRIPT_FILENAME пришел правильный. Скорее всего разница в поведении связана с
>> содержимым fastcgi_params. У вас там что-то передается, что зависит от root, и на
>> это что-то опирается ваш php скрипт.
>>
>> p. s. лучше присылать не strace php, а nginx debug log
>> http://nginx.org/en/docs/debugging_log.html
>>
>> --
>> Валентин Бартенев
>> _______________________________________________
>> nginx-ru mailing list
>> nginx-ru at nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>


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