How to set a option within a location block

--[ UxBoD ]-- uxbod at splatnix.net
Wed Jul 7 15:22:02 MSD 2010


----- Original Message -----
> On Wed, Jul 07, 2010 at 11:12:42AM +0100, --[ UxBoD ]-- wrote:
> 
> > ----- Original Message -----
> > > On Wed, Jul 07, 2010 at 10:06:16AM +0100, --[ UxBoD ]-- wrote:
> > >
> > > > Hi,
> > > >
> > > > I have the URL http://www.xyz.com/dav/xxx and I need to be able
> > > > to
> > > > set http_timeout only when /dav/ is present in the URL. The
> > > > problem
> > > > is that the configuration is third party supplied and they
> > > > already
> > > > have:
> > > >
> > > > location /
> > > > {
> > > >
> > > > }
> > > >
> > > > So is it possible to have a location within a location for
> > > > something
> > > > like:
> > > >
> > > > location /
> > > > {
> > > >     location ^~ /dav/ {
> > > >         keepalive_timeout 0;
> > > >     }
> > > > }
> > >
> > > It's possible, but why can not you add
> > >
> > > location /dav/ {
> > > }
> > >
> > > before or after
> > >
> > > location / {
> > > }
> > >
> > > ?
> >
> > Would need to duplicate all the other options within the /dav/ block
> > as once it matches it does not process the other location block.
> 
> You may move common directives outside "location /":
> 
> common all directives
> 
> location / {
> }
> 
> location /dav/ {
> }
> 

Igor, to be clear on the flow then that would process all the directives under '/' and then if the URI contains /dav/ it would also pull in what ever is in that location block; in essence inherit all the directives ?
-- 
Thanks, Phil



More information about the nginx mailing list