Re: fcgi document_root в 1.1.8
Валентин Бартенев
ne на vbart.ru
Чт Ноя 24 09:43:01 UTC 2011
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