TrueURL

431 Request Header Fields Too Large

Le serveur refuse la requête, car ses en-têtes sont trop volumineux, généralement parce que le navigateur envoie trop de cookies ou des cookies trop gros.

Message de statut
Request Header Fields Too Large
Redirection
Non
Mise en cache possible par défaut
Non

431 Request Header Fields Too Large (RFC 6585) signifie que le serveur refuse de traiter la requête parce qu’un champ d’en-tête, ou l’ensemble des en-têtes, est trop volumineux. Le client peut réessayer après avoir réduit la taille des en-têtes.

Les cookies sont généralement en cause : un site et ses sous-domaines définissent de plus en plus de cookies, jusqu’à ce que l’en-tête Cookie dépasse la limite du serveur. Des URL Referer très longues et de gros jetons d’authentification peuvent aussi le provoquer. Node.js, par exemple, répond 431 lorsque les en-têtes dépassent sa limite, ce qui arrive souvent aux développeurs sur localhost, où s’accumulent les cookies de nombreux projets locaux.

Tous les serveurs n’utilisent pas le code 431 : nginx, par exemple, renvoie à la place 400 Bad Request avec « Request Header Or Cookie Too Large ».

Exemple de réponse

HTTP
HTTP/1.1 431 Request Header Fields Too Large
Connection: close

SEO et vérification des redirections

Les robots d’exploration envoient des en-têtes légers, sans cookies : ils ne déclenchent donc presque jamais de 431. Si une vérification des redirections renvoie 431, réduisez la taille des en-têtes personnalisés ou des cookies que vous avez ajoutés.

Causes fréquentes et cas d’usage

  • Des cookies se sont accumulés pour un domaine et ses sous-domaines. Supprimez-les, ou définissez des cookies moins nombreux et plus petits.
  • De gros JWT ou d’autres en-têtes d’autorisation volumineux.
  • Des en-têtes Referer très longs, issus d’URL aux chaînes de requête énormes.
  • Une limite de taille d’en-têtes basse dans un serveur Node.js (--max-http-header-size), un proxy ou un répartiteur de charge.

Vérificateur de redirections d’URL

Affichez chaque code de statut que renvoie une URL, saut par saut, avec le vérificateur de redirections gratuit de TrueURL.