How to "undo" a global server deny all in a location block

justink101 nginx-forum at nginx.us
Mon Mar 9 23:38:47 UTC 2015


Is it possible to undo a server level deny all; inside a more specific
location block? See the following:

server {
    allow 1.2.3.4;
    allow 2.3.4.5;
    deny all;
 
    location  /  {
        location ~ ^/api/(?<url>.*) {
            # bunch of directives
        }

        location = /actions/foo.php {
            # bunch of directives
        }

        location = /actions/bar.php {
            #bunch of directives
        }

        location = /actions/allow-all.php {
            # this should allow all
            # bunch of directives
        }

       location ~\.php {
           # bunch of directives
       }
    }
}

All the location blocks except for /actions/allow-all.php should follow the
global server allow and deny rules. /actions/allow-all.php should undo those
rules and just allow all.

Posted at Nginx Forum: http://forum.nginx.org/read.php?2,257155,257155#msg-257155



More information about the nginx mailing list