how to make a named location in subrequest
bigplum
nginx-forum at nginx.us
Thu Jan 19 12:24:29 UTC 2012
Hi,
Previously, I wrote a module to make a subrequest to backend. nginx.conf
like that:
location /file {
nphase_uri /dummy;
nphase_set_uri_var $np_uri http://backend;
}
location /dummy {
proxy_pass $np_uri;
}
The module could send original URI "http://localhost/file/abcd.txt" to
backend to process.
And the module could get response from backend and decide to continue or
refuse.
But now This fix disabled sending original URI to backend.
*) Bugfix: a "proxy_pass" directive without URI part might use
original
request after redirection with the "try_files" directive.
If we need to send same request to backend, we must use named location.
But it
seems that named location is not support in subrequest. The named
location only
processed in try_files phase.
Following configuration would not work, for the subrequest send a
request "GET /dummy"
rather than original URI.
location /dummy {
try_files /dummy @named;
}
location @named {
proxy_pass $np_uri;
}
So how do I make it work?
Posted at Nginx Forum: http://forum.nginx.org/read.php?2,221447,221447#msg-221447
More information about the nginx
mailing list