http { limit_conn_zone $binary_remote_addr zone=addr:10m; //$binary_remote_addr 表示通过remote_addr这个标识来做限制 //zone=addr:10m 表示生成一个大小为10M,名字为addr的内存区域 ... server { location /download/ { limit_conn addr 1; #限制并发数 limit_rate 50k; #限制带宽 } }
$binary_remote_addr: Zeigt die Einschränkung durch das remote_addr-Flag an. Der Zweck von „binary_“ besteht darin, die Speichernutzung zu verkürzen Grenze die gleiche Client-IP-Adresse
zone=addr:10m: bedeutet, dass ein Speicherbereich mit einer Größe von 10 MB und einem Addr-Namen generiert wird, um Informationen zur Zugriffshäufigkeit zu speichern
http-Statuscode
400-499 wird verwendet, um clientseitige Fehler anzuzeigen.
500-599 wird zur Unterstützung von Serverfehlern verwendet.
rate=1r/s: Gibt an, dass die Zugriffshäufigkeit von Clients mit derselben Identität zulässig ist, also 1 Mal pro Sekunde Es kann beispielsweise auch nur eine Anfrage pro Sekunde verarbeitet werden, wodurch der Zugriff auf einmal alle 2 Sekunden beschränkt wird, d. h. nur eine Anfrage alle 2 Sekunden verarbeitet wird. ?? Anfragen, die das Zugriffshäufigkeitslimit überschreiten, können zum Warten in diesen Puffer gestellt werden, aber es gibt nur 5 Positionen in diesem Wartebereich. Anfragen, die das Limit überschreiten, melden direkt einen 503-Fehler und kehren zurück.
nodelay
Wenn festgelegt, besteht die Möglichkeit, Anfragen (Burst + Rate) sofort zu verarbeiten, wenn die Anforderung (Burst + Rate) überschreitet 503 gibt es nie eine Situation, in der die Anfrage warten muss. (Die Einheit der Rate ist hier: r/s).Wenn es nicht festgelegt ist, werden alle Anfragen der Reihe nach in die Warteschlange gestellt.
limit_rate begrenzt die Bandbreite
Cache-Konfiguration ablaufen lassen
Standortausdruckstyp.
~ bedeutet, einen regulären Vergleich durchzuführen, um den Fall zu unterscheiden
~* bedeutet die Durchführung einer regulären Übereinstimmung, ohne Berücksichtigung der Groß-/Kleinschreibung.^~ bedeutet die normale Zeichenübereinstimmung. Präfixübereinstimmung wird bevorzugt. Wenn der Abgleich erfolgreich ist, werden keine anderen Standorte abgeglichen.= führt eine exakte Übereinstimmung gängiger Zeichen durch. Das ist eine exakte Übereinstimmung.
Standortausdruckspriorität
@ „@“ definiert einen benannten Speicherort, der bei interner Anweisung verwendet wird, z. B. error_page, try_files
/: Universeller Abgleich, wenn keine andere Übereinstimmung vorhanden ist, wird jede Anforderung abgeglichen;
Standort = > vollständiger Standortpfad> Standort ~ ,~* regulärer Standort-Startpfad (Präfixübereinstimmung) >
Aus Sicherheitsgründen muss das Protokollverzeichnis Ihnen keine Nginx-Benutzerzugriffsrechte gewähren. Legen Sie # chmod -R 700 /usr/local/nginx/logs festEinschränkungen von Site-Verzeichnissen und Dateien
Chinesische ZeichenZeichensatz utf-8 festlegen;
Das obige ist der detaillierte Inhalt vonMethoden zur Strombegrenzung und Konfigurationsverwaltung von Nginx. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!