
gibt es ein "nicht"-Äquivalent für Nginx-Matches? Ich denke
location !~ "\.(html|php)$" {
deny all;
}
um nur die Bereitstellung von HTML- und PHP-Dateien zuzulassen. Die Alternative ist „alles verweigern“, gefolgt von einem ~ mit „alles zulassen“. Leider scheint dies irgendwie mit einer früheren Standortmagie in meiner Nginx-Datei zu kollidieren.
Antwort1
Sie können verschachtelte Standortlogik wie folgt verwenden:
location / {
deny all;
location ~* "\.(html|php)$" {
Allow all;
}
}
Antwort2
Regexped-Standorte stimmen auch in ihrer Reihenfolge überein. Sie könnten also auch so etwas verwenden:
location ~* "\.(html|php)$" { ...; break; } location ~* "." { deny all; }
Beachten Sie, dass der zweite Standort ebenfalls auf regulären Ausdrücken basieren muss.