$query string в подзапросах

mivlad nginx-forum на nginx.us
Чт Ноя 26 18:47:20 MSK 2009


Приветствую.

Обнаружилась довольно странная проблема в 0.7.62. На странице есть несколько ssi-блоков, обрабатываемых одним location через fastcgi. В этом location я пытался выполнять директивами mod_rewrite некоторые действия над $query_string -- разобрать её if'ом и присвоить некоторые другие переменные в зависимости от результатов. Оказалось, что при первом подзапросе в $query_string пусто, несмотря на то, что параметры блоку передаются. В последующих же подзапросах переменная наблюдалась с правильным содержимым. При этом в fastcgi_param правильный $query_string попадал уже в первом позапрос!
 е, а вот если сделать из этого location'а return 404, то переменной не оказывается и в последующем подзапросе. То есть создаётся впечатление, что переменная "материализуется" лишь на какой-то из поздних стадий обработки подзапроса, после чего работает нормально.

Кстати, разбором query_string я занялся из-за того, что $arg_... в этих условиях тоже не работали правильно.

И ещё один момент -- когда основной запрос идёт к статичному файлу, всё вроде работает верно, проблема видимо наблюдается только когда страницу получаем через fastcgi.

-- 
С уважением,
Михаил

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,25818,25818#msg-25818




Подробная информация о списке рассылки nginx-ru