nginx http-core enhancement: named location in subrequests + directive use_location
Maxim Dounin
mdounin at mdounin.ru
Thu Apr 30 18:56:55 UTC 2015
Hello!
On Thu, Apr 30, 2015 at 07:13:01PM +0200, Sergey Brester wrote:
> Am 30.04.2015 15:55, schrieb Maxim Dounin:
>
> > On Wed, Apr 29, 2015 at 07:22:51PM +0200, Sergey Brester
> > wrote:
> >
> > > And how it's expected to be processed in a named location if
> > > r->uri is "@..."? Function
> > > "ngx_http_core_find_named_location" if location was found
> > > set "r->loc_conf = (*clcfp)->loc_conf" and returns NGX_OK.
> >
> > The problem is that the r->uri will be illegal.
>
> I think not for internal request?!
>
> if (r->internal && r->uri...
You think it's not a problem, or you think it won't be illegal?
While it's not generally a problem for nginx if an URI in an
internal request becomes illegal, it's certainly not a case we are
going to promote by applying patches. If illegal URIs are ok for
you, you may just use something like
auth_request @foo;
location = @foo {
...
}
And it will work right now out of the box.
What you are trying to do is to misuse named locations as static
locations with some invalid URIs. This is wrong, named locations
are different. They preserve URI of a request untouched. That's
their main property and main advantage.
(BTW, please use plain text for further messages, I'm a bit bored
to fix quoting in what your mail client produces as a plain text
version. Thank you.)
--
Maxim Dounin
http://nginx.org/
More information about the nginx-devel
mailing list