Hostwinds Blog

Résultats de recherche pour:


429 Erreur: comment les bots et les outils internes peuvent surcharger votre site L'image sélectionnée

429 Erreur: comment les bots et les outils internes peuvent surcharger votre site

par: Hostwinds Team  /  juillet 16, 2025


L'erreur 429— "Trop de demandes"—Couvré quand quelque chose frappe trop fréquemment votre site en peu de temps. Au début, cela peut sembler un petit problème ou simplement votre serveur essayant de gérer le trafic.

Mais dans de nombreux cas, ce n'est pas une ruée de vrais visiteurs qui causent le problème - c'est des bots.Certains sont utiles, comme Googlebot.D'autres, comme les grattoirs ou les outils agressifs, peuvent surcharger votre site sans signification.Et parfois, le coupable n'est pas du tout externe - c'est votre propre logiciel ou vos systèmes de surveillance déclenchant l'erreur.

Qu'est-ce qui cause réellement l'erreur 429?

Une erreur 429 est la façon de dire de votre serveur:

"Vous envoyez trop de demandes trop rapidement.Reculez un peu."

Cette réponse est généralement liée à la limitation du taux, une méthode sites Web et API utilisent pour contrôler le nombre de demandes qu'un seul client (comme un navigateur, un robot ou un script) peut envoyer sur une période de temps.

Bien qu'il soit possible qu'un afflux soudain de trafic puisse provenir d'une vague de vrais utilisateurs, c'est plus souvent le résultat d'une activité automatisée.Ces robots et ces outils ne sont pas nécessairement malveillants, car une grande partie de l'internet en dépend pour gérer les tâches répétitives sans entrée humaine.Mais lorsqu'ils envoient trop de demandes trop rapidement, ils peuvent déclencher involontairement une erreur 429.

Qui envoie trop de demandes?

Il est facile de supposer que la pointe provient d'une vague de circulation ou même d'une activité malveillante.Mais dans de nombreux cas, la cause tombe dans l'un de ces groupes:

  • Crawlers du moteur de recherche: Des robots comme Googlebot, Bingbot et d'autres scannent votre site Web pour maintenir leurs index de recherche à jour - c'est généralement une bonne chose.Cela dit, ils peuvent toujours surcharger un serveur si le site est mis à jour fréquemment ou dispose de nombreuses pages interconnectées.
  • Outils SEO: Des outils comme Screaming Frog, Ahrefs et Semrush simulent le comportement des robots pour auditer votre site Web.Ils peuvent envoyer des centaines ou des milliers de demandes en peu de temps pour vérifier chaque page, lien et balise.Sans paramètres d'accélérateur appropriés, ces outils peuvent submerger un serveur Web.
  • SCOPERS DE SITE: Ce ne sont généralement pas les bienvenus.Les grattoirs sont souvent utilisés pour extraire des données telles que les prix, les critiques ou descriptions de produits.Beaucoup ne suivent pas le comportement de bot poli et peuvent frapper certaines pages à plusieurs reprises ou tenter de télécharger l'intégralité de votre site.
  • Moniteurs de disponibilité et scripts: Si ceux-ci sont réglés pour fonctionner trop fréquemment ou sans intervalles intelligents, ils peuvent se comporter involontairement comme un trafic de spam.
  • Services internes: Votre propre infrastructure - comme les travaux Cron, les API ou les intégrations - peut submerger accidentellement votre site, surtout s'ils ne sont pas conçus pour respecter les limites.

L'essentiel: ce ne sont pas des gens qui parcourent votre site - ce sont des processus automatisés.Certains sont utiles, certains ne le sont pas, mais de toute façon, ils peuvent surcharger votre infrastructure, surtout si votre serveur n'est pas conçu pour gérer des pointes soudaines comme celles qui se produisent pendant Attaques DDoS.

Comment suivre la source de l'erreur 429

Avant d'apporter des modifications aux limites de taux de votre site ou aux paramètres de pare-feu, il est utile de savoir exactement ce qui cause le problème.

Commencez par des journaux:

  • Journaux du serveur: Ce sont le premier endroit à vérifier.Vous recherchez des adresses IP, des agents utilisateur ou des chemins qui apparaissent à plusieurs reprises sur un court laps de temps.Les fichiers journaux communs incluent Access.log pour apache ou access.log / error.log pour nginx.Recherchez les demandes qui renvoient un code d'état 429.
  • Journaux de limite de taux (si vous les avez): Certains services (comme les passerelles API, les proxys ou les réseaux de livraison de contenu) fournissent des journaux dédiés à la limitation des taux.Ceux-ci peuvent identifier les demandes dépassées le seuil, d'où ils proviennent et quel point final était accessible.
  • Motifs: Surveillez les signes évidents d'automatisation.Demande que:
    • Ne portez pas de biscuits ou d'en-têtes de session typique d'un navigateur
    • Utilisez des agents utilisateur génériques ou suspects comme les refus de python, les boucles ou les grattoirs personnalisés
    • Proviennent de fournisseurs d'hébergement ou de centres de données connus (AWS, Azure, Hetzner, etc.)

Une fois qu'un modèle émerge, vous pouvez décider si le trafic est bon (par exemple, Googlebot) ou doit être bloqué ou ralenti.

Votre taux de taux est-il configuré correctement?

La limitation des tarifs aide à empêcher votre site de se surcharger, mais s'il est trop agressif, il peut également bloquer le trafic utile - en mettant des problèmes comme 504 erreurs de délai de passerelle.La bonne configuration peut empêcher les abus sans bloquer le trafic légitime.

Choses à penser:

  • Méthode de limitation: Êtes-vous de suivi des demandes par adresse IP, jeton API, session utilisateur ou autre chose?La limitation basée sur IP est courante, mais peut ne pas être efficace si plusieurs utilisateurs partagent la même IP.
  • Type de limite:
    • Fenêtre fixe: limite les demandes à intervalles fixes (par exemple, 100 demandes par minute).Facile à mettre en œuvre, mais peut être joué.
    • Fenêtre coulissante: plus flexible, répartit les demandes au fil du temps.
    • Seau de jeton ou seau qui fuit: permet des rafales occasionnelles mais contrôle la vitesse globale.
  • En-têtes et réponses: Assurez-vous que vous renvoyez des en-têtes comme Retry-After afin que les robots et les outils sachent quand faire une pause et réessayer.Cela améliore la compatibilité avec les robots de crawlers bien élevés.
  • Seuils personnalisés: Ne traitez pas tout le trafic également.Vous pouvez autoriser plus de demandes pour les utilisateurs connectés, les robots de recherche ou les outils internes tout en gardant une laisse plus serrée sur les visiteurs inconnus ou non authentifiés.

À la fin de la journée, c'est un acte d'équilibrage - si vos limites de taux sont trop serrées, vous pouvez bloquer les robots légitimes ou empêcher les utilisateurs d'accéder à votre site.S'ils sont trop lâches, les mauvais robots peuvent manger des ressources ou pire.

Laissez les bons bots à travers

Les moteurs de recherche et les outils de référencement de confiance sont essentiels pour la visibilité et les performances.Vous voulez les permettre d'entrer, mais de manière contrôlée.

Voici ce qui aide:

  • Robots.txt et rampe: Vous pouvez utiliser la directive Crawl-Delay pour dire aux robots de ralentir.Ce n'est pas honoré par tous les robots, mais certains, en particulier les gentils, le respectent.
  • Bots de confiance de liste blanche: Passez en revue les chaînes d'agent utilisateur dans vos journaux pour identifier Googlebot, Bingbot et autres.Confirmez-les avec chèques DNS inversés pour éviter les imposteurs.
  • Ajustez les limites de taux pour les outils connus: Réglez les limites de taux ou les exceptions basées sur des agents utilisateur connus ou des gammes IP vérifiées.Par exemple, permettez à Googlebot une limite de demande plus élevée ou un délai d'expiration de session plus long qu'un robot inconnu.
  • Limites de taux distinctes: Si vous exécutez une API ou un site de contenu, utilisez des règles distinctes pour les visiteurs humains par rapport aux outils automatisés.

De cette façon, les robots de recherche peuvent faire leur travail sans écraser votre infrastructure.

Comment gérer les mauvais robots et les robots

Certains robots sont clairement abusifs.Ils ne sont pas intéressés à indexer votre contenu - ils essaient de le gratter, de le copier ou de rechercher des vulnérabilités.Ceux-ci doivent être bloqués ou gérés de manière plus agressive.

Façons de les traiter:

  • Bloquer par agent utilisateur: Si vous voyez des récidivants à l'aide d'agents utilisateur spécifiques, bloquez-les dans .htaccess, votre configuration de serveur, ou WAF (pare-feu d'application Web).
  • Bloquer par IP ou ASN: Utilisez des règles de pare-feu pour bloquer le trafic provenant d'IPS spécifiques ou même de réseaux d'hébergement entiers si les abus proviennent des centres de données.
  • Utilisez un WAF: Un pare-feu d'application Web peut détecter et bloquer automatiquement les modèles abusifs, comme trop de demandes pour connecter des pages ou rechercher des points de terminaison.
  • Ajouter un frottement léger: Sur les pages sensibles (comme la recherche ou les points de terminaison de tarification), ajoutez des défis JavaScript ou du captcha de base.Cela arrête la plupart des outils non navals sans nuire à l'expérience utilisateur.
  • Suivre les abus au fil du temps: Créez une liste de blocs qui met à jour automatiquement lorsqu'un bot déclenche plusieurs violations de limite de taux.

N'oubliez pas vos propres outils

Il est facile de se concentrer sur le trafic externe lorsqu'il s'agit de 429 erreurs, mais certains des pires délinquants peuvent être des outils que vous ou votre équipe avez mis en place.Les scripts internes, les audits de référencement, les moniteurs de disponibilité ou les tableaux de bord peuvent inonder votre site avec des demandes tout aussi facilement que les robots tiers.

La différence?Vous avez le contrôle total sur ces derniers.

Sources internes courantes de surcharge

Même les outils conçus pour aider peuvent causer des problèmes lorsqu'ils sont mal configurés:

SEO Crawlers (comme crier Frog, Semrush et Ahrefs)
Ces outils exploitent l'ensemble de votre site pour auditer les métadonnées, les liens et la santé technique.

S'il est défini pour utiliser une concurrence élevée (par exemple, plus de 10 threads) et aucun délai d'exploration, ils peuvent submerger votre serveur, en particulier sur les environnements partagés ou inférieurs.

Scripts personnalisés ou robots internes
Vous pourriez avoir des scripts interrogeant vos propres points de terminaison API à des fins d'analyse, de test ou de mise en scène.

S'ils n'incluent pas les limites, les retards ou la mise en cache, ils peuvent marteler votre application involontairement - parfois en cours d'exécution chaque minute via Cron.

Outils de surveillance du site
Les outils qui vérifient la disponibilité, les temps de réponse ou les performances de la page peuvent être bruyants s'ils sont configurés pour vérifier trop fréquemment.

La vérification de votre page d'accueil toutes les 15 secondes peut sembler inoffensive, mais multipliez cela par plusieurs régions ou services et s'additionne rapidement.

Comment garder les outils internes en échec

La bonne nouvelle est que le trafic interne est le plus facile à réparer - car vous contrôlez le comportement.

Vitesse de crawl inférieure et concurrence
Dans des outils comme hurler la grenouille:

  • Réduisez le nombre de threads ou de connexions simultanées.
  • Ajoutez un délai d'exploration de quelques secondes entre les demandes.
  • Si vous vérifiez plusieurs sites, échelonne les rampes afin qu'ils ne fonctionnent pas en même temps.

Même la chute de 10 threads à 2 peut réduire considérablement la déformation du serveur sans perdre des fonctionnalités.

Utilisez la mise en cache dans la mesure du possible

  • Réponses de l'API de cache pour les tableaux de bord internes ou les outils qui n'ont pas besoin de données en temps réel.
  • Vérification de la page d'accueil du cache ou instantanés du site dans des outils de surveillance pour des intervalles où rien n'est susceptible de changer.

Cela réduit la nécessité de frapper à plusieurs reprises votre application pour les mêmes résultats.

Exécuter des audits et des analyses pendant les heures de trafic faible

  • Planifiez des rampes et des scripts internes à fonctionner pendant la nuit ou tôt le matin (dans le fuseau horaire de votre serveur).
  • Cela évite de se chevaucher avec des périodes où les clients ou les visiteurs utilisent votre site.

Si votre site est global, envisagez de diviser les audits entre les régions ou les fenêtres temporelles.

Construisez la logique de réessayer dans les scripts

  • Ne laissez pas les scripts marteler le serveur s'ils obtiennent une réponse 429.
  • Ajoutez une logique pour attendre ou reculer lorsque ce statut apparaît - respectant idéalement tous les en-têtes de réessayer s'ils sont présents.
  • Un court délai ou une approche de revers exponentielle (en attente plus longtemps après chaque réessayer) peut empêcher une boucle de rétroaction de tentatives qui aggravent le problème

Documentez et passez en revue vos propres emplois

  • Gardez un dossier commun des scripts ou des outils appellent votre site Web, à quelle fréquence et quand.
  • Si un nouveau numéro 429 apparaît, vous aurez un endroit clair pour commencer à chercher avant de supposer qu'il s'agit d'une source extérieure.

Ce que vous pouvez faire à long terme

Une fois que vous avez retrouvé et arrêté ce qui cause les erreurs 429, il est intelligent de penser à l'avance.La résolution du problème actuel n'est qu'une partie du travail - il est maintenant temps d'empêcher le même problème de se reproduire.

Voici quelques étapes pratiques pour aider à garder les choses stables sur le long terme:

Utilisez l'en-tête de réessayer

Si votre serveur renvoie un 429, c'est une bonne idée d'inclure un en-tête de réessayer dans la réponse.Cela indique aux bots et aux outils automatisés combien de temps à attendre avant de réessayer.

  • Par exemple, Retry-After: 120 dit au client d'attendre 120 secondes.
  • La plupart des robots bien élevés - y compris Googlebot - honoreront cela et ralentiront leur rampe.

Il n'arrêtera pas les grattoirs ou les outils abusifs qui ignorent les en-têtes, mais il donne aux services légitimes un moyen de reculer automatiquement sans causer d'autres problèmes.

Où l'appliquer:

  • Configation du serveur Web (Apache, Nginx).
  • Réponses au niveau de l'application (pour les API ou les applications Web à l'aide de frameworks comme Express, Flask, etc.)

Surveiller régulièrement le trafic BOT

N'attendez pas que les choses se cassent.Une petite visibilité va très loin.

  • Configurez les revues de journaux, les tableaux de bord ou les rapports qui suivent l'activité des robots connus.
  • Surveillez les changements de comportement, comme un robot de robot qui frappe de nouvelles sections de votre site ou envoie des demandes plus fréquentes que d'habitude.
  • Gardez un œil sur les nouveaux agents utilisateur ou les blocs IP inattendus.Il peut s'agir de signes précoces de grattage ou d'abus.

Outils que vous pouvez utiliser:

  • Journaux d'accès (analysés avec quelque chose comme GOACCESS ou AWSTATS).
  • Outils d'analyse de serveur (tels que NetData, Grafana ou Prometheus).
  • Fonctionnalités de gestion des bots dans CloudFlare ou votre WAF.

Ajustez les limites de taux à mesure que vous grandissez

Les limites de taux ne sont pas «réglées et oubliez-la».À mesure que votre trafic augmente, les changements de contenu ou votre infrastructure évoluent, les seuils que vous avez fixés plus tôt pourraient devenir trop agressifs ou trop détendus.

Passez en revue vos politiques de limitation de taux régulièrement:

  • Utilisez-vous la bonne méthode (basée sur IP, basée sur l'utilisateur, etc.)?
  • Vos critères de terminaison très trafiques sont-ils protégés?
  • Les outils légitimes sont-ils toujours bloqués accidentellement?

Vous devrez peut-être augmenter la limite de certains chemins ou le réduire sur d'autres.Vous pouvez également expérimenter l'utilisation d'un algorithme de fenêtre coulissant au lieu d'une fenêtre fixe pour éviter les coupures soudaines.

Astuce pour les équipes: Documentez vos limites de taux et qui ils affectent.Cela facilite le débogage des problèmes lorsqu'ils apparaissent plus tard.

Utilisez un CDN avec des fonctionnalités de gestion de bot

Un bien Réseau de livraison de contenu Fait plus que le contenu de cache - il peut également aider à filtrer ou à gazéger le trafic indésirable avant même qu'il n'atteigne votre serveur.

La plupart des CDN majeurs (comme CloudFlare, rapidement ou Akamai) proposent des outils pratiques comme:

  • Limites de taux de demande par IP ou chemin
  • Score de bot ou empreinte digitale (pour faire la différence entre les humains et les robots)
  • Les règles qui bloquent ou défient automatiquement le mauvais comportement
  • Défis JavaScript ou défis gérés pour ralentir

Le déchargement de ce trafic avant qu'il atteigne votre serveur d'origine aide à réduire la charge, à réduire les coûts de bande passante et à empêcher les problèmes comme les 429 de se produire en premier lieu.

Si vous utilisez déjà un CDN, prenez le temps d'explorer ses paramètres de sécurité ou de protection de bot - vous avez peut-être déjà les outils dont vous avez besoin et vous devez simplement les activer.

Conseil bonus: ajoutez un contexte à vos pages d'erreur

Si vous retournez une erreur 429, ne servez pas un écran vierge.Ajoutez une courte explication et un message amical.Par exemple:

"Nous obtenons plus de demandes que prévu. Si vous utilisez un outil automatisé, réessayez dans quelques minutes."

Cela aide les développeurs et les équipes de référencement à comprendre ce qui s'est passé et à s'adapter en conséquence.Vous pouvez même inclure un lien vers la documentation ou Robots.txt de votre site si cela s'applique.

Conclure

Une erreur 429 ne signifie pas toujours que votre site est surchargé - cela signifie souvent que quelqu'un ou quelque chose est trop arrogant.

En apprenant à suivre, identifier et gérer ces demandes, vous pouvez réduire les problèmes, protéger vos ressources et vous assurer que votre site reste disponible pour les personnes et les robots - vous voulez en fait servir.

Écrit par Hostwinds Team  /  juillet 16, 2025