Странно работают относительные пути под windows
lintiay
nginx-forum at nginx.us
Чт Июл 9 18:51:34 UTC 2015
äÏÂÒÏÇÏ ÄÎÑ!
÷ÓÑ ÐÒÏÂÌÅÍÁ × ÔÏÍ, ÞÔÏ Ñ ÈÏÞÕ ÉÓÐÏÌØÚÏ×ÁÔØ ÏÐÒÅÄÅÌÅÎÎÕÀ ÓÔÒÕËÔÕÒÕ
ËÁÔÁÌÏÇÏ×:
c:\admin\nginx\* - ÓÅÒ×ÅÒ nginx
c:\admin\php\* - php-ÉÎÔÅÒÐÒÅÔÁÔÏÒ
c:\admin\public_html\* - ÓÏÄÅÒÖÉÔ ÆÁÊÌÙ ÓÅÒ×ÅÒÁ (html/php/jpg/...)
т.е. каталог “public_html”, должен находится вне каталога “nginx”, на
ÕÒÏ×ÅÎØ ×ÙÛÅ.
ðÙÔÁÀÓØ ÉÓÐÏÌØÚÏ×ÁÔØ, ÐÒÉ ÓÂÏÒËÅ ÐÏÄ Windows, ÓÌÅÄÕÀÝÉÊ ËÏÎÆÉÇ:
http {
...
server {
...
#root c:/admin/public_html; # ÒÁÂÏÔÁÅÔ ËÏÒÒÅËÔÎÏ
#root /admin/public_html; # ÒÁÂÏÔÁÅÔ ËÏÒÒÅËÔÎÏ
root ../public_html; # ÎÅ ÒÁÂÏÔÁÅÔ!
#root ./../public_html; # ÎÅ ÒÁÂÏÔÁÅÔ!
location ~ \.php$ {
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
fastcgi_index index.php;
try_files $fastcgi_script_name =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_intercept_errors on;
}
}
}
ÐÒÉ ÐÏÐÙÔËÅ ×ÙÐÏÌÎÉÔØ php-ÓËÒÉÐÔ nginx ×ÏÚ×ÒÁÝÁÅÔ:
"No input file specified."
ðÒÉÞÅÍ ÓÔÁÔÉÞÅÓËÉÅ ÆÁÊÌÙ ÒÁÂÏÔÁÀÔ ÐÒÅËÒÁÓÎÏ.
ÅÓÌÉ ÐÏÍÅÓÔÉÔØ ËÁÔÁÌÏÇ public_html × ×ÎÕÔÒØ ËÁÔÁÌÏÇÁ nginx, ÔÏÇÄÁ ÉÓÐÏÌØÚÕÑ
root public_html;
×ÓÅ ÒÁÂÏÔÁÅÔ ÚÁÍÅÞÁÔÅÌØÎÏ, ÎÏ ÍÅÎÑ ÜÔÏ ÎÅ ÏÞÅÎØ ÕÓÔÒÁÉ×ÁÅÔ.
ðÒÅÄÐÏÌÁÇÁÅÔÓÑ, ÞÔÏ ÓÁÍ ËÁÔÁÌÏÇ "c:\admin" ÂÕÄÅÔ ÉÍÅÔØ ÎÅ ÆÉËÓÉÒÏ×ÁÎÎÏÅ ÉÍÑ
ÉÌÉ ÐÕÔØ É ÈÏÔÅÌÏÓØ ÂÙ ÏÔ×ÑÚÁÔØ nginx ÏÔ ×ÓÅÈ ÜÔÉÈ ÓÌÏÖÎÏÓÔÅÊ.
÷ÓÅ ×ÎÅÛÎÉÅ ÐÕÔÉ ÂÕÄÕÔ ÐÒÏÐÉÓÙ×ÁÔØÓÑ ËÏÎÆÉÇÅ ËÏÔÏÒÙÊ É ÂÕÄÅÔ ÚÁÐÕÓËÁÔØ
nginx, ÔÁËÉÍ ÏÂÒÁÚÏÍ, ÞÔÏÂÙ ÐÒÉ ÉÚÍÅÎÅÎÉÉ ÄÉÒÅËÔÏÒÉÉ "admin" ÎÅ ÐÒÉÛÌÏÓØ
ÐÒÁ×ÉÔØ "root" × "nginx.conf".
ðÙÔÁÌÓÑ ÐÅÒÅÂÒÏÓÉÔØ ÐÕÔØ Ë "root" ÞÅÒÅÚ ÚÁÐÕÓË:
>nginx -g "env ROOT_DIR=/admin/public_html;"
É ÐÒÉÎÑÔØ Ó ÐÏÍÏÝØÀ:
perl_set $rootDir 'sub { return $ENV{"ROOT_DIR"}; }';
ÉÌÉ
set_by_lua $rootDir 'return os.getenv("ROOT_DIR")';
ÎÏ, ËÁË Ñ ÐÏÎÑÌ × Windows ÓÂÏÒËÅ ÎÅÔÕ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÈ ÍÏÄÕÌÅÊ, Á ÓÏÂÒÁÔØ ÉÈ
ÓÁÍÏÓÔÏÑÔÅÌØÎÏ ÄÌÑ ÍÅÎÑ ÚÁÔÒÕÄÎÉÔÅÌØÎÏ:)
âÕÄÕ ÏÞÅÎØ ÐÒÉÚÎÁÔÅÌÅÎ ÚÁ ÐÏÍÏÝØ.
óÐÁÓÉÂÏ.
Posted at Nginx Forum: http://forum.nginx.org/read.php?21,260161,260161#msg-260161
Подробная информация о списке рассылки nginx-ru