Advanced Maintenance

Maxim Dounin mdounin at mdounin.ru
Thu Jul 2 19:24:58 MSD 2009


Hello!

On Thu, Jul 02, 2009 at 07:52:42AM -0500, AMP Admin wrote:

> Ohhh... i was looking for a not operator like '!'.  thanks, I'll give that a try!

It's much better to just configure normal more specific locations instead 
of using regexps, e.g.

location / {
    # maintanance checks here
}

location /maintanance.php {
    # no checks here
}

location /privacypolicy.php {
    # and no checks here
}

location /images/ {
    # and no checks here
}

location /promo/ {
    # and no checks here
}

Each request will be processed in most-specific location, and 
hence there would be no maintanance checks for privacypolicy.php, 
images and promo (and maintanance.php itself).

Maxim Dounin


> 
> -----Original Message-----
> From: owner-nginx at sysoev.ru [mailto:owner-nginx at sysoev.ru] On Behalf Of Edho P Arief
> Sent: Wednesday, July 01, 2009 10:38 PM
> To: nginx at sysoev.ru
> Subject: Re: Advanced Maintenance
> 
> On Thu, Jul 2, 2009 at 10:06 AM, AMP Admin<admin at ampprod.com> wrote:
> > I don't understand.  How do we make the "no maintenance checks"?  sorry, I'm
> > still learning.
> >
> > If we want everything but privacypolicy.php, images directory and promo
> > directory to go to maintenance how would that look?
> >
> > It seems that this puts the entire site in maintenance mode:
> > Location / {
> >        if (-f $document_root/maintenance.php) {
> >                rewrite  ^(.*)$  /maintenance.php last;
> >                break;
> >        }
> > }
> >
> > I'm not sure how to do the no maintenance part.
> >
> 
> location ~ ^/(?!privacypolicy.php|images|promo) {
>   try_files /maintenance.php $uri @fallback;
> }
> 
> -- 
> O< ascii ribbon campaign - stop html mail - www.asciiribbon.org
> 
> 





More information about the nginx mailing list