HTTP 431 Campi delle intestazioni troppo grandi
431 Request Header Fields Too Large significa che le intestazioni HTTP inviate dal client superano la dimensione gestibile dal server.
Significato
Il problema più comune sono cookie troppo grandi o numerosi per il dominio. Talvolta è un Referer lungo o un token Authorization molto esteso. Alcuni server segnalano lo stesso problema con HTTP 400 e la dicitura Request Header Or Cookie Too Large.
Cause comuni
- Troppi cookie accumulati da sessioni, tracciamento o esperimenti A/B.
- Un JWT eccessivamente grande nell'header Authorization.
- Progetti di sviluppo differenti su localhost accumulano cookie nello stesso dominio.
- Il limite dimensionale degli header è impostato troppo basso sul server.
Cosa può fare un visitatore?
- Elimina i cookie soltanto del dominio interessato, senza cancellare inutilmente quelli di tutti i siti.
- Prova ad aprire la pagina in una finestra di navigazione privata.
Cosa può fare il gestore?
- Riduci numero e dimensioni dei cookie: non usarli per memorizzare grandi quantità di dati.
- Memorizza grandi token o informazioni sul server e invia nel cookie soltanto un identificatore di sessione.
- Se serve aumenta il limite degli header, per esempio Node.js --max-http-header-size o Nginx large_client_header_buffers.
Effetti sulla SEO
Googlebot normalmente non invia i cookie personali del browser, quindi 431 raramente compromette l'indicizzazione delle pagine pubbliche.
Domande frequenti
Perché vedo un 431 su localhost?
Cookie di diversi progetti locali possono essere inviati insieme allo stesso host localhost fino a superare il limite.
431 è uguale a 400 Cookie Too Large?
Spesso il problema di fondo è lo stesso: intestazioni troppo grandi. Alcuni server rispondono 400 anziché 431.