ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re[4]: модуль eval+fastcgi_pass



Hello Valery,


>> Да действительно не заработало. Я так понимаю это реализовать будет
>> весьма проблематично по принципиальным соображениям.

VK> Зависит от того, на чьей стороне реализовывать. Если на моей стороне, то 
проблематично, поскольку придется реализовывать фильтр, разбирающий вывод 
любого модуля, при необходимости читая файлы.
VK> Думаю, что на данный момент это слишком сложно для такого простого модуля. 
Кроме того, я не проверял и не уверен, что это вообще возможно.
VK> Если на стороне Игоря, то незнаю насколько это проблематично.

Возникла еще проблема с логикой внутреннего редиректа: внутри блока eval 
перменная $uri перекрывается
значением /eval_135604988 и у меня нет возможности при перезапуске
вычисления после "rewrite .. last;" протащить внутрь евал блока
эффективное значение $url. При использовании $request_uri естественно
вся это чудо-конструкция зацикливается.


eval $redirecturi {
     proxy_pass_request_body off;
     proxy_pass_request_headers
     proxy_method GET;
     proxy_set_header "Effective-Request-Uri" $uri;
     proxy_set_header "Host" $http_host;
     proxy_pass http://$server_addr:$server_port/nginx.php ;
}

if ($redirecturi ~ "^300:(.+)$") {
     set $uri_tmp $1;
     rewrite (^.*$) $uri_tmp last;
}


     в мануале ясно сказано что такие фокусы типа
     
      location / {
                set $preserveUri $uri;

                eval $var {
                     # $preserveUri is empty
                }
            }


     не пройдут. можно ли как-то это обойти?

-- 
Best regards,
 Serge




 




Copyright © Lexa Software, 1996-2009.