Forum: NGINX $args getting cleared out when using memcached module. Bug?

Announcement (2017-05-07): is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see and for other Rails- und Ruby-related community platforms.
jturmel (Guest)
on 2009-03-26 23:47
(Received via mailing list)
We're having some really weird issues when trying to pass $args to the

Here is a snippet.

set $memcached_key $uri$is_args$args;
error_page 404 = @fallback;

It will pass in $uri$is_args, which in our case is "/index.php?"

If we comment out the 3 lines with memcached stuff and do the following:

add_header "test" $uri$is_args$args;

You can see the entire value just fine.  It seems to be a bug in the way
module interacts with Nginx but we can't nail it down.  We added a debug
line at
the very beginning of the memcached module and it seems to be empty as
soon as
it is called.

This seems to be a bug with all the extensive testing and configurations

Thank you,
Josh Turmel (Guest)
on 2009-03-27 02:13
(Received via mailing list)
We have messed with it some more and have more information.

Basically our 2 request might look like the following, we have
discovered the
first example works, while the second example does not.

Example 1:

This will get rewritten to:

This call works we found out, now for the next example (example 2) that
does not
work and results in the key being sent to memcached as "/index.php?"
missing the
$args portion:

Example 2:

This gets rewritten in Nginx as:

What we have deduced is that if the initial request entering Nginx has
args then
the $args are properly passed when we set $memcached_key
($uri$is_args$args) but
when the initial request (ie Example 2) does not have args, they are
empty, even
though we have rewritten the request.

One odd note though is that $is_args is set properly, so this seems to
exclusive to $args.

Hope this helps.

Thank you,
This topic is locked and can not be replied to.