Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Re[4]: модуль eval+fastcgi_pass
----- Serge Bondari <bondari@xxxxxxxxxxx> wrote:
> Возникла еще проблема с логикой внутреннего редиректа: внутри блока 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
> }
> }
>
>
> не пройдут. можно ли как-то это обойти?
Не проще ли вместо всей этой конструкции использовать X-Accel-Redirect?
--
Regards,
Valery Kholodkov
|