Heim >Betrieb und Instandhaltung >Nginx >So legen Sie eine Whitelist in Nginx über das Geo-Modul fest
Originalkonfiguration:
http { ......
limit_conn_zone $binary_remote_addr zone=one:10m; limit_req_zone $binary_remote_addr zone=fifa:10m rate=5r/s;
...... server { ...... limit_conn one 5; limit_req zone=fifa burst=100; ...... }}
Whitelist-Konfiguration:
http { ......
geo $whiteiplist { default 1; 127.0.0.1 0; 10.10.0.0/24 0; } map $whiteiplist $limit { 1 $binary_remote_addr; 0 ""; } limit_conn_zone $limit zone=one:10m; limit_req_zone $limit zone=fifa:10m rate=5r/s;
...... server { ...... limit_conn one 5; limit_req zone=fifa burst=100; ...... }}
Beschreibung:
Geo-Direktive definiert eine Whitelist $whiteiplist, der Standardwert ist 1, alle sind eingeschränkt. Wenn die Client-IP mit der in der Whitelist aufgeführten IP übereinstimmt, ist der Wert von $whiteiplist 0, was bedeutet, dass sie nicht eingeschränkt ist.
Der Befehl „map“ ordnet den $whiteiplist-Wert 1, also die eingeschränkte IP, der Client-IP zu. Ordnen Sie den $whiteiplist-Wert 0, der die Whitelist-IP darstellt, einer leeren Zeichenfolge zu.
Die Anweisungen limit_conn_zone und limit_req_zone werden für Schlüssel mit Nullwerten ignoriert, wodurch keine Begrenzung der aufgelisteten IPs erreicht wird.
Das obige ist der detaillierte Inhalt vonSo legen Sie eine Whitelist in Nginx über das Geo-Modul fest. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!