
Lesen von nginxngx_http_access_modulebin ich auf Folgendes gestoßen:
Bei vielen Regeln ist die Verwendung derngx_http_geo_moduleModulvariablen sind vorzuziehen.
Wie kann ich mit dem Geomodul „Zulassen“/„Verweigern“ verwenden? Wenn ich dies tue:
geo $listofips {
default 0;
8.8.8.8 1;
}
server {
# [...]
allow $listofips;
deny all;
}
Es wird mir der folgende Fehler angezeigt:
ungültiger Parameter "$listofips" in /path/to/config:97
Wie kann ich das Geomodul zur Zugriffskontrolle verwenden? Ich kann kein ifs verwenden, da dies offensichtlich nicht funktioniert try_files
(siehe IfIsEvil von nginx).
Antwort1
Ohne die Verwendung von IF bin ich sicher, dass dies zum Zeitpunkt der Erstellung dieser Antwort nicht möglich war.
In diesem Fall würde das so aussehen:
geo $trusted_user {
default 0;
8.8.8.8 1;
}
server
{
if ( $trusted_user = 0 ) {
return 403;
}
}
Senden Sie einen Vorschlag an das Team NGINX in: https://www.nginx.com/
Diese Frage wurde basierend auf dieser Antwort beantwortet:NGINX - IP bedingt zulassen oder verweigern
Suchquelle"# try_files funktioniert nicht aufgrund von if"In„Beispiele“: https://www.nginx.com/resources/wiki/start/topics/depth/ifisevil/#examples