Avete appena provato a visitare un sito web ma vi ha accolto il messaggio di errore HTTP 431? O forse avete un sito web e state ricevendo lamentele dalle persone che vedono questo errore quando visitano il vostro sito?

I codici di stato HTTP come l’errore 431 possono essere frustranti perché ostacolano il sito web con cui volete interagire. Per fortuna, però, i tre numeri del codice di errore – 431 – vi forniscono le informazioni di cui avete bisogno per risolverlo.

In questo articolo, imparerete il significato di questo errore specifico e quali sono alcune delle cause comuni. Poi condivideremo quattro passi di risoluzione dei problemi che potete seguire per risolvere il problema, sia che lo stiate sperimentando sul sito web di qualcun altro o sul vostro.

Guardate la nostra video-guida per risolvere l’errore 431

Cos’È l’Errore HTTP 431?

Prima di poter parlare dell’errore HTTP 431 nello specifico, dobbiamo prima capire cos’è HTTP e da dove vengono questi errori.

Quando visitate un sito web, il vostro browser ha bisogno di un modo per comunicare con il webserver dietro quel sito. Lo fa utilizzando HTTP, che sta per Hypertext Transfer Protocol.

Il vostro browser web invia una richiesta HTTP al server per determinate informazioni, per esempio il codice del sito web o un file immagine. Poi il server invia una risposta HTTP al browser.

Insieme a queste richieste e risposte, i browser e i server includono anche i codici di stato HTTP, che sono codici numerici come 431.

Esistono decine di codici di stato diversi. Noi di Kinsta abbiamo creato un’intera guida sui codici di stato HTTP. Alcuni codici di stato HTTP indicano che tutto funziona normalmente. Tuttavia, molti codici di stato HTTP indicano qualche tipo di errore.

Come probabilmente potete immaginare, il messaggio HTTP 431 è uno dei codici di errore. Il numero 431 indica nello specifico l’errore HTTP “Request Header Fields Too Large”.

Essenzialmente, questo significa che la richiesta HTTP che il vostro browser sta facendo al server è troppo grande. Oppure, un altro modo di formularla è che la richiesta è troppo lunga.

Questo può accadere perché la dimensione totale delle intestazioni della richiesta è troppo grande o perché un singolo campo di intestazione è troppo grande.

Poiché il vostro browser sta facendo una richiesta troppo grande/lunga, il server abbandona/nega la richiesta invece di consegnare la risposta HTTP che il vostro browser si aspettava.

Poiché il vostro browser non riceve la risposta necessaria, non è in grado di rendere la pagina web e mostra invece il messaggio di errore HTTP 431.

Cosa Causa un Errore 431 Request Header Fields Too Large?

In generale, i codici di errore HTTP possono indicare un problema in due aree diverse:

  • Lato server: C’è qualcosa che va storto nel webserver che provoca il codice di errore.
  • Lato client: C’è qualcosa che non va nel browser web che causa l’errore.

L’errore HTTP 431 è un errore HTTP lato client. Questo significa che la causa del problema è da qualche parte nel vostro browser web (perché il vostro browser web è quello che fa la richiesta con le intestazioni grandi). Questo significa anche che dovrete applicare la maggior parte delle correzioni regolando il vostro browser web.

Tuttavia, la causa principale non è sempre riconducibile al browser. A volte il modo in cui il sito web è codificato può far sì che il browser generi richieste troppo grandi.

In genere, l’errore HTTP 431 è causato da problemi con i cookie, da lunghi URL referrer o semplicemente dalla dimensione totale delle intestazioni della richiesta.

Se state cercando di visitare il sito web di qualcun altro, potete provare ad eliminare queste cause regolando il vostro browser web.

Se gestite un sito web e state cercando di diagnosticare il motivo per cui le persone che lo visitano vedono l’errore HTTP 431, potreste aver bisogno di scavare nel codice del vostro sito per rendere meno probabile che si generino richieste grandi. Per esempio, potreste aver bisogno di regolare il modo in cui il vostro sito usa i cookie nei browser dei visitatori o configurare il vostro server per accettare richieste più grandi.

Come Risolvere l’Errore HTTP 431 (4 Metodi)

Ora che sapete cosa significa il messaggio HTTP Error 431 Request Header Fields Too Large e alcune delle sue cause, vediamo come risolvere questo errore.

1. Cancellare i Cookie e la Cache del Browser

Quasi tutti i siti web usano i cookie per identificare e memorizzare informazioni sui singoli utenti. Per esempio, se accedete a un sito web, quel sito userà un cookie per ricordare che avete effettuato l’accesso in modo da non doverlo rifare a ogni visita.

Per saperne di più sui cookie, date un’occhiata alla nostra guida ai cookie e alle sessioni PHP.

Tuttavia, se ci sono troppi cookie, questo può portare a intestazioni di richiesta HTTP troppo grandi, che possono innescare il messaggio HTTP Error 431 Request Header Fields Too Large.

Una soluzione comune, quindi, è quella di cancellare i cookie per il sito dove si verificano i problemi. La maggior parte dei browser più popolari rendono questo abbastanza facile da fare, e ve lo mostriamo qui sotto.

Ecco come cancellare i cookie del browser in Chrome:

  1. Inserite la seguente query nella barra degli indirizzi del vostro browser: chrome://settings/content/all.
  2. Cercate l’URL del sito in cui state avendo problemi.
  3. Fate clic sull’icona del cestino per eliminare tutti i cookie e i dati del sito per quel sito.
Schermata delle impostazioni di Chrome, scheda sicurezza e privacy: è evidenziata l’icona del cestino per cancellare i cookie.
Come cancellare i cookie per un singolo sito in Chrome.

Il metodo di base di cui sopra dovrebbe funzionare anche per altri browser web basati su Chromium, come Brave, Edge, Vivaldi, Opera e altri. Tuttavia, dovrete passare attraverso l’area delle impostazioni piuttosto che incollare l’URL.

Per cancellare i cookie per un sito specifico in Safari, seguite queste istruzioni:

  1. Aprite l’area delle preferenze (Safari > Preferenze).
  2. Selezionate la scheda Privacy.
  3. Fate clic su Gestisci dati sito web.
  4. Cercate e selezionate il sito dove state avendo problemi.
  5. Fate clic sul pulsante Rimuovi una volta che avete selezionato il sito.

Per cancellare i cookie per un sito specifico in Firefox, seguite queste istruzioni:

  1. Inserite il seguente testo nella barra degli indirizzi del vostro browser Firefox: about:preferences#privacy.
  2. Scorrete in basso e trovate la sezione Cookie e dati del sito .
  3. Fate clic sul pulsante Gestisci dati in quella sezione.
  4. Cercate e selezionate il sito dove state avendo problemi.
  5. Fate clic sul pulsante Rimuovi selezionati una volta che avete selezionato il sito.
Schermata delle impostazioni Firefox, scheda Privacy e Sicurezza: è aperta la finestra da cui selezionare i cookie da cancellare per un singolo sito.
Come cancellare i cookie per un singolo sito in Firefox

2. Accorciare o Rimuovere i Parametri di Query dell’URL

Cercare di visitare un sito usando URL con lunghi parametri di query può anche innescare l’errore HTTP 431.

I parametri di query sono la parte di un URL che viene dopo l’URL “principale”. Si usano per passare informazioni aggiuntive al server, ma non sono effettivamente necessari per accedere alla pagina nella maggior parte dei casi.

Per esempio, molti siti usano i parametri UTM per tracciare le conversioni. Ecco un esempio di un URL di base – https://tuosito.com/ – con alcuni parametri di query aggiuntivi:

https://tuosito.com/?utm_source=Facebook&utm_medium=CtW&utm_campaign=PC&fbclid=IwAR3ph8rkY1UfPOzhbrqPWBGqLXFsFeAP48otBX1F0Ao2Y1RYydAJqms_RQU

Per vedere se questo è il problema, cancellate il punto interrogativo e tutto ciò che viene dopo di esso (la parte in grassetto qui sopra). Poi provate a rivisitare l’URL appena pulito e vedete se l’errore scompare.

3. Accorciare/Modificare il Vostro Codice (Se Scrivete Codice Personalizzato)

Questi prossimi due consigli non vi aiuteranno se state riscontrando l’errore sul sito web di qualcun altro. Ma se state vedendo l’errore sul vostro sito (o se i vostri visitatori si lamentano di riscontrare l’errore), allora questi consigli possono aiutarvi a risolvere la causa principale.

La prima opzione è quella di scavare nel codice del vostro sito e controllare se il vostro codice sta generando intestazioni di richiesta particolarmente grandi. Cioè, se il vostro codice sta forzando i browser dei visitatori a inviare richieste di grandi dimensioni.

Questi errori sono più comuni quando si lavora con JavaScript. Se controllate su StackOverflow, vedrete che la maggior parte delle persone che riscontrano questo errore usa tecnologie come AngularJS, React, Node.js, ecc.

Per esempio, la vostra applicazione Node.js potrebbe chiedere più informazioni del necessario, generando intestazioni di richiesta inutilmente grandi. Allo stesso modo, ricordate che gli spazi nel vostro codice contano per la dimensione della richiesta, quindi può essere un’altra fonte “invisibile” di richieste grandi.

In alcuni casi, potete anche regolare la dimensione massima della richiesta a livello di server modificando il codice di configurazione del vostro server. Per esempio, se state usando React, potete regolare la dimensione massima dell’intestazione nel file package.json. Cercate questa linea di codice:

"start": "react-scripts --max-http-header-size=1024 start",

4. Regolare le Impostazioni dei Cookie (Se il Vostro Sito Provoca Errori agli Utenti)

Un altro modo in cui il vostro sito potrebbe innescare l’errore HTTP 431 è il modo in cui usa i cookie.

Per esempio, se state impostando molti cookie nei browser degli utenti, questo potrebbe provocare l’errore. Questa è una delle ragioni per cui cancellare i cookie di un sito è una delle potenziali soluzioni.

Per evitarlo, assicuratevi di non impostare troppi cookie per sbaglio. Questo richiederà di scavare nel codice del vostro sito o di assumere una persona esperta con le qualifiche per farlo.

Riepilogo

L’errore HTTP 431 Request Header Fields Too Large è un errore lato client che appare quando il vostro browser web fa una richiesta al server con intestazioni troppo grandi e/o lunghe.

Poiché la richiesta è troppo grande, il server rifiuta la richiesta, motivo per cui il vostro browser web visualizza il messaggio HTTP Error 431 invece del contenuto che vi aspettavate.

Se state riscontrando questo errore quando visitate un altro sito, la soluzione più comune è cancellare i cookie del vostro browser per quel sito. Dovreste anche assicurarvi che l’URL non sia troppo lungo a causa dei parametri di query.

Se state riscontrando questo errore quando visitate il vostro sito (o i vostri visitatori si lamentano di questo errore), probabilmente dovrete scavare nel vostro codice per verificare che non state generando grandi intestazioni di richiesta o impostando troppi cookie. In alcuni casi, potreste anche essere in grado di aumentare la dimensione massima delle intestazioni di richiesta a livello di server modificando i file di configurazione del vostro server.

Per saperne di più sui codici di stato HTTPS in generale, leggete la nostra guida completa ai codici di stato HTTP. Abbiamo anche una serie di articoli incentrati sulla correzione di altri errori HTTP comuni, compresi gli errori Internal Server, Bad Requests, Bad Gateway, Not Found.