Comment limiter la fréquence de l'araignée Baidu
Utilisation du module ngx_http_limit_req_module de Nginx
Pour limiter la fréquence de crawl du robot Baidu, vous pouvez utiliser le module ngx_http_limit_req_module de Nginx. Ce module permet de contrôler la fréquence de visite du robot, réduisant ainsi la charge sur le serveur.
Configuration de Nginx
Des réglages doivent être effectués dans le fichier de configuration de Nginx pour limiter la fréquence de crawl du robot Baidu. Ajoutez le contenu suivant dans la configuration globale :
limit_req_zone $anti_spider zone=anti_spider:60m rate=200r/m;
Dans une directive server spécifique, ajoutez la configuration suivante :
limit_req zone=anti_spider burst=5 nodelay;if ($http_user_agent ~* "aiduspider") {set $anti_spider $http_user_agent;}
Explication des paramètres
Dans la configuration ci-dessus, certains paramètres nécessitent une explication :
rate=200r/m :Signifie qu'il ne peut traiter que 200 requêtes par minute.
burst=5 :Indique que le nombre maximum de connexions simultanées est de 5, c’est-à-dire qu'il ne peut traiter que 5 requêtes simultanément.
nodelay :Signifie que lorsque la limite de connexions simultanées est atteinte, il renvoie directement une erreur 503.
Partie IF :Permet de vérifier si la requête provient du robot Baidu. Si c'est le cas, la variable $anti_spider est définie pour lui appliquer des restrictions.
Grâce à la configuration ci-dessus, il est possible de limiter efficacement la fréquence de l'exploration par l'araignée de Baidu, afin d'éviter une pression excessive sur le serveur.