$request_uri
This variable is equal to the *original* request URI as received from the client including the args. It cannot be modified. Look at $uri for the post-rewrite/altered URI. Does not include host name. Example: "/foo/bar.php?arg=baz"
$uri
This variable is the current request URI,without any arguments(see $args for those). This variable will reflect any modifications done so far by internal redirects or theindex
module. Note this may be different from $request_uri, as $request_uri is what was originally sent by the browser before any such modifications. Does not include the protocol or host name. Example:/foo/bar.html
$args
This variable is the GET
parameters in request line, e.g.foo=123&bar=blahblah
; This variable could be changed.
You can check them by adding the variable in log_format and finding out the value in the tail of access.log ! Do you get it??It's amazing!!!
Appendix
http://wiki.nginx.org/HttpCoreModule#.24request_uri
http://blog.sina.com.cn/s/blog_4ff12f66010158lk.html