Heim > Artikel > Betrieb und Instandhaltung > So fangen Sie einen bestimmten Benutzeragenten in Nginx ab
Spezifische Benutzeragenten in Nginx auf die schwarze Liste setzen
Um die Sperrliste für Benutzeragenten zu konfigurieren, öffnen Sie die Nginx-Konfigurationsdatei Ihrer Website und suchen Sie den Abschnitt mit den Serverdefinitionen. Diese Datei kann je nach Nginx-Konfiguration oder Linux-Version an verschiedenen Orten abgelegt werden (z. B. /etc/nginx/nginx.conf, /etc/nginx/sites-enabled/
Kopieren Sie den Code. Der Code lautet wie folgt:
server {
listen 80 default_server;
server_name xmodulo.com;
root /usr/share/nginx/html;
....
}
Öffnen Sie die Konfigurationsdatei Suchen Sie den Serverabschnitt und fügen Sie die folgende if-Anweisung irgendwo im Abschnitt hinzu.
Kopieren Sie den Code. Der Code lautet wie folgt:
server {
listen 80 default_server;
server_name xmodulo.com; Sensibles Matching
if ($http_user_agent ~ (antivirx|arian ) {
return 403;
return 403;
}
... .
$ sudo /path/to/nginx -s reload
Bisher habe ich gezeigt, wie man einige User-Agents für HTTP-Anfragen in Nginx blockiert.
Seit der User-Agent-Blacklist Wenn sie sehr groß werden, ist es keine gute Idee, sie im Serverteil von Nginx abzulegen. Stattdessen können Sie eine separate Datei erstellen, in der alle blockierten Benutzeragenten aufgeführt sind .rules und definieren Sie ein Diagramm, das alle blockierten Benutzeragenten im folgenden Format definiert:
$ wget --user-agent "malicious bot" http://<nginx-ip-address>
Kopieren Sie den Code:
map $http_user_agent $badagent { default 0;
~*bösartig 1; ~* Hintertür 1; Die Zeile „Standard 0“ bedeutet, dass alle Benutzeragenten zugelassen werden, die nicht in anderen Dateien aufgeführt sind. Öffnen Sie als Nächstes die Nginx-Konfigurationsdatei Ihrer Website, suchen Sie den Abschnitt mit http und fügen Sie dann irgendwo im http-Abschnitt die folgende Zeile hinzu.如 Kopieren Sie den Code wie folgt: http { include /etc/nginx/useraurs.rules Öffnen Sie nun den Abschnitt der Nginx-Konfiguration, der Ihren Server definiert, und fügen Sie die folgende if-Anweisung hinzu: Kopieren Sie den Code. Der Code lautet wie folgt: server { if ($badagent) {
}
Beachten Sie, dass die Include-Anweisung vor dem Server erscheinen muss (aus diesem Grund fügen wir sie hinzu). um es hinzuzufügen, um es hinzuzufügen, um es hinzuzufügen, um es dem http-Teil hinzuzufügen).
. ...
}
Zum Schluss Nginx neu laden. $ sudo /path/to/nginx -s reload
Das obige ist der detaillierte Inhalt vonSo fangen Sie einen bestimmten Benutzeragenten in Nginx ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!