rewrite && nginx == T_T

Dmitry Morozovsky marck at rinet.ru
Wed Feb 25 10:33:10 MSK 2009


On Wed, 25 Feb 2009, Sandel wrote:

S> Здравствуйте!
S> Столкнулся с проблемой нджинкса... Вот недавно решил перейти с апача, на него...
S> Юзаю nginx 0.6.35
S> Есть кусок кода конфига:
S> server {
S> ...
S>      location / {
S>             root   /var/www/site/;
S>             index  index.php index.html index.htm;
S>             rewrite ^/(.*)\.png$ u.php?anime=$1 last;
S>         }
S> 
S>         error_page   500 502 503 504  /50x.html;
S>         location = /50x.html {
S>             root   /usr/local/www/nginx-dist;
S>         }
S>         location ~ \.php$ {
S>             root           html;
S>             fastcgi_pass   unix:/var/run/php-fpm.sock;
S>             fastcgi_index  index.php;
S>             fastcgi_param  SCRIPT_FILENAME  /var/www/site$fastcgi_script_name;
S> #               fastcgi_param  SCRIPT_FILENAME  /var/www/site/u.php;
S>             include        fastcgi_params;
S>         }
S> ...
S> Обратите внимание, пожалуйста, на строчку реврайта... т.е. при запросе файла .png должно реврайтить на u.php?anime=блаблабла ... u.php это файл php который обрабатывается интерпретатором. И обратите внимание на строчку 
S>  fastcgi_param  SCRIPT_FILENAME  /var/www/site$fastcgi_script_name;
S> Т.е. проблема состоит в том, что в переменную $fastcgi_script_name пишется значение уже под реврайтом, в данном случае это блабла.png, и собственно интерпретатор не обработает этот файл, т.к. его не существует(т.к. он реврайтился)... вот он и выдает 
S> "No input file specified". Т.е. если я вместо  $fastcgi_script_name впишу /u.php все будет работать, но там вить и другие php файлы есть, которые необходимо обработать...
S> Что можно предпринят в этом случае?
S> Заранее спасибо огромное за подсказки! Уже второй день головой бьюсь
S> ((

написать отдельный location = /u.php ?

-- 
Sincerely,
D.Marck                                     [DM5020, MCK-RIPE, DM3-RIPN]
[ FreeBSD committer:                                 marck at FreeBSD.org ]
------------------------------------------------------------------------
*** Dmitry Morozovsky --- D.Marck --- Wild Woozle --- marck at rinet.ru ***
------------------------------------------------------------------------


More information about the nginx-ru mailing list