передача QUERY_STRING при обработке error_page 404

Andrei Nigmatulin anight at monamour.ru
Wed Aug 24 22:06:10 MSD 2005


On Wednesday 24 August 2005 21:37, Igor Sysoev wrote:
> On Wed, 24 Aug 2005, Andrei Nigmatulin wrote:
> > On Wednesday 24 August 2005 19:32, Igor Sysoev wrote:
> >>> Хочется обрабатывать 404 ошибки скриптом, но при этом в скрипт
> >>> почему-то не передается QUERY_STRING.
> >>>
> >>> Как можно сделать чтобы передавалась ?
> >>
> >> После error_page $query_string обнуляется. Можно так:
> >>
> >>      server {
> >>          set  $original_query_string  $query_string;
> >>
> >>          ...
> >>
> >>          location ^~ /404.phtml {
> >>              ...
> >>              fastcgi_param  QUERY_STRING   $original_query_string;
> >>              ...
> >
> > Так все равно не передается. nginx версии 0.1.42. Что я делаю
> > неправильно ? ;-)
>
> Я ошибся: после внутреннего редиректа с помощью error_page опять
> выполяняются все директивы ngx_http_rewrite_module на уровне сервера
> и $original_query_string становится равной пустой $query_string.
> Нужно вынести set из сервера во все location, где нужно сохранить
> $query_string

Да, так работает, спасибо !!

Правда конфиг становится все менее и менее читаемым, но это мелочи, которые 
меня мало беспокоят ;-)

-- 
Andrei Nigmatulin
GPG PUB KEY 6449830D

No Microsoft products were used in any way
for the creation of this message. If you are
using a Microsoft product to view it, BEWARE!
I'm not responsible for any harm you might
encounter as a result.


More information about the nginx-ru mailing list