Неверный document_root при дефолтном подключении fcgi
TDz
tdz at modestus.org
Fri Feb 22 01:51:37 MSK 2008
Здравствуйте,
замечена интересная штука - дефолтный конфигурационный файл nginx передаёт
неверный document_root
В конфиге 1 хост с двумя стандартными локациями из дефолтного конфига
который поставляется в комплекте
location /
{
index index.php;
root /home/test;
}
location ~* ^.+\.php$
{
fastcgi_pass unix:...;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/test$fastcgi_script_name;
include fastcgi_params;
}
При таком раскладе phpinfo сообщает следующее:
_SERVER["DOCUMENT_ROOT"] = /srv/nginx-new/html
Очевидно nginx посылет дефолтный путь, ибо указанного пути нигде в конфиге
нет (был изначально и как видно выше был заменён)
Насколько я понимаю этой переменной пользутся многие скрипты для своих нужд
и передавать её неверно не есть хорошо для стандартного конфига которым
будут пользоваться многие начинающие пользователи nginx. Возможно имеет
смысл использовать схожую декларацию предложенную где-то тут в рассылке:
root /home/test;
fastcgi_pass ...;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
include fastcgi_params;
В этом случае и гибкость остаётся прежней, и править надо при мигрировании
как и раньше всего один параметр и заодно DOCROOT верно передаётся, уверен
проблему можно решить ещё как-то иначе
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20080221/91408f3e/attachment.html>
More information about the nginx-ru
mailing list