Quando un sito Web non si carica, è semplicemente fastidioso. È importante capire, tuttavia, perché è successo, così da sapere come risolvere il problema.
La famiglia di codici di stato 4xx è quella che stiamo esplorando qui, dato che si riferiscono a richieste del client non valide o corrotte. In particolare, daremo un’occhiata più da vicino all’errore 400 Bad Request: vediamo cosa significa questo errore, cosa lo causa e alcuni passaggi specifici per risolvere il problema.
Guardate la Nostra Video-Guida per Risolvere un Errore 400 Bad Request
Cos’è l’Errore 400 Bad Request?
Un messaggio 400 Bad Request, conosciuto anche come errore 400 o errore HTTP 400, è percepito dal server come un errore generico del client e viene restituito quando il server determina che l’errore non rientra in nessuna delle altre categorie di codice di stato.
Il concetto chiave da capire qui è che l’errore 400 Bad Request è qualcosa che ha a che fare con la richiesta inviata dal client prima ancora che venga elaborata dal server.
L’Internet Engineering Task Force (IETF) definisce così il 400 Bad Request:
Il codice di stato 400 (Bad Request) indica che il server non può o non vuole elaborare la richiesta a causa di qualcosa che è percepito come un errore del client (ad esempio, sintassi della richiesta malformata, framing del messaggio di richiesta non valido, o routing della richiesta ingannevole).
Codice di errore | 400 Bad Request Error |
Tipo di errore | Lato client |
Variazioni dell’errore | HTTP Error 400 HTTP Error 400 – Bad Request HTTP Status 400 – Bad Request HTTP Error 400. The request hostname is invalid (“Il nome host della richiesta non è valido”) 400 Bad Request 400 Bad Request. Request Header Or Cookie Too Large (“Intestazione della richiesta o cookie troppo grandi”) Bad Request – Error 400 Bad Request – Invalid URL (“URL non valido”) |
Cause dell’errore | Errore di sintassi della stringa URL Cache e cookie del browser danneggiati Cache di ricerca DNS Dimensione del file troppo grande Errore generico del server |
Cosa Causa l’Errore HTTP 400 Bad Request?
Esistono diverse cause che possono attivare l’errore 400 Bad Request e, anche se questo errore non è specifico di un particolare browser o sistema operativo, le correzioni variano leggermente.
1. Errore di Sintassi della Stringa dell’URL
Un errore HTTP 400 Bad Request può verificarsi a causa di URL digitato in modo errato, una sintassi non corretta o un URL contenente caratteri non validi.
È sorprendentemente facile fare un errore del genere e può accadere se un URL è stato codificato in modo non corretto. Il seguente link è un esempio di URL che contiene caratteri che il server non sarà in grado di elaborare, quindi viene attivato un 400 Bad Request.
https://twitter.com/share?lang=en&text=Example%20of%20malformed%%20characters%20in%20URL
Notate il carattere % in più subito dopo la parola non valida nell’URL. Uno spazio codificato correttamente dovrebbe essere %20 e non %%20. Ecco come appare il risultato nel browser Chrome.
Anche un carattere non ammesso può attivare un errore 400 Bad request. L’URL che segue contiene un carattere { non consentito. Pertanto, si ottiene lo stesso tipo di errore.
https://twitter.com/share?lang=en&text=Example%20of%20malformed{%20characters%20in%20URL
2. Cache e Cookie del Browser Danneggiati
Anche se l’URL è corretto al 100%, l’errore 400 Bad Request può comunque verificarsi a causa di file danneggiati nella cache del browser o per problemi con i cookie del browser scaduti o danneggiati.
Potreste aver riscontrato un errore 400 Bad Request durante il tentativo di accedere all’area di amministrazione del vostro sito WordPress un po’ di tempo dopo l’ultimo accesso. Succede perché il cookie che gestisce i vostri dati d’accesso può essere corrotto e non potete essere autenticati come utenti validi con privilegi da amministratori.
Ciò comporterà quindi il rifiuto della connessione e l’attivazione di un errore 400 Bad Request.
3. Cache di Lookup del DNS
L’errore 400 Bad Request può verificarsi quando i dati del DNS memorizzati localmente non sono sincronizzati con le informazioni sul DNS registrate.
Tutti i nomi di dominio sono alias per indirizzi IP. Potete pensare a un indirizzo IP come a un numero di telefono che “chiama sempre” uno specifico server a cui volete connettervi. Quando visitate per la prima volta un sito web, ha luogo un processo chiamato “risoluzione dei nomi” e in quel momento il nome di dominio si risolve nell’indirizzo IP specifico del server.
Per velocizzare le cose, questi dati sono memorizzati localmente sul vostro computer nella cache DNS locale, quindi il processo di risoluzione dei nomi non deve essere eseguito per ogni singola visita per un dato sito web. In modo simile funziona la cache del browser per HTML, CSS, JavaScript, media e altri file.
4. Dimensione File Eccessiva
Una richiesta errata 400 può verificarsi anche quando si tenta di caricare su un sito web un file troppo grande perché la richiesta possa essere soddisfatta. Ciò è strettamente correlato al limite della dimensione dei file del server e varierà in base alla sua configurazione.
Fino ad ora, ci siamo concentrati sul fatto che l’errore 400 Bad Request viene attivato solo per problemi lato client.
5. Errore Generico del Server
Questo errore può talvolta essere attivato a causa di problemi lato server. In particolare, un codice di stato 400 potrebbe indicare un problema generico sul server, un errore del server o altri problemi temporanei non specificati.
Se questo succede quando si tenta di connettersi a un sito web di terze parti, è al di là del proprio controllo e la cosa migliore è provare ad aggiornare il browser e verificare a intervalli regolari se il problema sia stato risolto dai proprietari del sito.
Una cosa che potete fare per verificare che si tratti di un problema lato server è provare a caricare il sito su browser diverso. Se volete fare tutto il possibile, testatelo su una macchina/dispositivo completamente diverso per escludere problemi specifici del sistema.
Quando non è possibile connettersi al sito tramite altri browser, computer, sistemi operativi o altri dispositivi, è probabile che si tratti di un problema lato server. Se volete, potete contattare il proprietario del sito e fargli sapere quale sistema operativo, browser e versione stavate utilizzando quando si è verificato il problema.
Errore 400 Bad Request: Come Appare?
Il più delle volte un errore 400 Bad Request è correlato a problemi lato client. Abbiamo già visto come appare un errore 400 Bad Request in Chrome.
E gli altri browser?
400 Bad Request in Firefox
400 Bad Request in Safari
400 Bad Request in Microsoft Edge
Come potete vedere, tutti i browser restituiscono un messaggio di codice di stato 400 generico e inutile. Sembra di rimanere praticamente soli nel trovare una soluzione al problema. In Firefox e Safari, non è nemmeno chiaro che si sia verificato un errore 400 Bad Request poiché la finestra del browser è completamente vuota!
Fortunatamente, abbiamo messo insieme una serie di semplici passaggi che potete eseguire per correggere l’errore 400 Bad Request. Diamo un’occhiata più da vicino a ciascuno di questi passaggi nella sezione che segue!
400 Bad Request (Glossario):
L’errore 400 Bad Request è un codice di stato della risposta HTTP che indica che il server non è stato in grado di elaborare (comprendere) la richiesta inviata dal client a causa di sintassi errata, framing del messaggio di richiesta non valido o instradamento della richiesta ingannevole.
Come Risolvere un Errore 400 Bad Request:
Seguite questi passaggi per individuare e correggere un errore 400 Bad Request.
Le soluzioni proposte comprendono:
Prima di approfondire i diversi metodi per correggere l’errore 400 Bad Request, dobbiamo far notare che diversi passaggi comportano lo svuotamento dei dati memorizzati nella cache locale.
È vero che se il vostro computer non memorizza nella cache file o dati, probabilmente ci sono meno problemi legati ad errori di connessione.
Tuttavia, i vantaggi della memorizzazione nella cache di file/dati sono ben documentati e l’esperienza di navigazione sul Web ne risentirebbe sicuramente se i browser non utilizzassero le tecniche di caching. Quando si parla di Edge Caching, per esempio, è possibile ridurre di oltre il 50% il tempo necessario per fornire pagine complete ai browser.
Tutto si riduce a un compromesso tra ottimizzazione ed esperienza utente, con i siti web che tentano di caricare il più rapidamente possibile, ma a volte possono essere soggetti a errori, come un 400 Bad Request, senza alcun preavviso.
1. Verificare l’URL Trasmesso
Dato che questo è uno dei motivi più frequenti di un errore 400 Bad Request, iniziamo con un evidente colpevole, la stessa stringa dell’URL. Può essere molto facile aggiungere caratteri indesiderati nell’URL quando lo si inserisce manualmente nel browser.
Verificate che il nome di dominio e la pagina specifica a cui stai tentando di accedere siano stati digitati correttamente. Inoltre, assicuratevi che siano separati da barre. Se l’URL contiene caratteri speciali, accertatevi che siano stati codificati correttamente e che siano caratteri URL ammessi.
Per gli URL lunghi, potresti trovare più semplice, e meno soggetto a errori, l’utilizzo di un encoder/decoder online di URL. Questo tipo di utility dovrebbe anche essere in grado di rilevare automaticamente nell’URL i caratteri non ammessi.
Quando siete sicuri che l’URL sia corretto, provate ad accedervi nuovamente nel browser. Se riscontrate ancora l’errore 400 Bad Request è il momento di svuotare la cache!
2. Svuotare la Cache del Browser
Se i file di qualche sito web memorizzati localmente sono stati danneggiati, è possibile che venga restituito un errore 400 Bad Request invece del contenuto previsto del sito.
Ciò riguarda tutti i tipi di file necessari per l’esecuzione corretta di un sito, come:
- HTML
- JavaScript
- File di testo/config
- CSS
- Media (immagini, video, audio)
- File dati (XML, JSON)
Questi file vengono archiviati localmente sul vostro computer dal browser quando il sito web viene visitato per la prima volta.
Per risolvere questo problema, è necessario svuotare la cache del browser.
In Chrome, fate clic sull’icona a tre punti nell’angolo a destra e selezionate Altri strumenti > Cancella dati di navigazione dal menu a comparsa.
Verrà visualizzata la finestra Cancella dati di navigazione. Qui accertatevi che sia selezionata l’opzione Immagini e file memorizzati nella cache, quindi fate clic sul pulsante Cancella dati per cancellare la cache del browser.
Potete anche scegliere di eliminare i file recenti per un intervallo di tempo specifico tramite il menu a discesa Intervallo di tempo. Tuttavia, per assicurarsi che vengano rimossi tutti i file potenzialmente danneggiati, consigliamo di eliminare tutti i file memorizzati localmente selezionando l’opzione Tutto.
Se utilizzate un browser diverso, consultate questa guida per cancellare la cache in tutti i principali browser (Mozilla Firefox, Safari, Internet Explorer, Microsoft Edge, Opera).
3. Cancellare i Cookie del Browser
Se la cancellazione della cache del browser non ha funzionato, è tempo di eliminare anche i cookie. Un singolo sito web può utilizzare decine di cookie diversi. Se solo uno di questi è scaduto o danneggiato, può essere sufficiente per innescare un errore 400 Bad Request.
Per cancellare i cookie in Chrome, aprite la finestra Cancella dati di navigazione facendo clic sull’icona con i tre punti nell’angolo in alto a destra e selezionate Altri strumenti > Cancella dati di navigazione dal menu a comparsa.
Assicuratevi che sia selezionat Cookie e altri dati dei siti e selezionate Tutto per l’intervallo di tempo per eliminare tutti gli attuali cookie dei siti web.
Una volta fatto, provate a caricare il sito web che ha restituito nuovamente l’errore 400 Bad Request. Supponendo che il sito utilizzi i cookie, si potrebbe risolvere il problema cancellandoli dal browser, in quanto l’errore è spesso associato a cookie corrotti o scaduti.
Per cancellare i cookie nei browser diversi da Chrome, leggete questa guida.
4. Controllare Se il Caricamento dei File Supera il Limite del Server
Se state tentando di caricare su un sito web un file che supera il limite del server della dimensione dei file, riscontrerete un errore 400 Bad Request.
Potete provarlo caricando prima un file più piccolo. Se questo ha esito positivo, il file iniziale è probabilmente troppo grande e dovrete trovare un modo per ridurlo prima di caricarlo di nuovo.
Questo dipenderà dal tipo di file che state tentando di caricare, ma sono disponibili molte risorse online che possono aiutarvi a comprimere immagini, video e file audio di grandi dimensioni.
5. Svuotare la Cache del DNS
Un’altra causa frequente di errore 400 Bad Request si verifica quando i dati locali di risoluzione del DNS sono danneggiati o scaduti.
I dati locali del DNS non vengono archiviati dal browser ma dallo stesso sistema operativo. Abbiamo messo insieme una guida dettagliata per cancellare la cache del DNS per Windows e macOS.
6. Disattivare le Estensioni del Browser
Se sono installate estensioni del browser che incidono sui cookie dei siti, potrebbero essere queste il colpevole. Provate a disabilitarle temporaneamente per vedere se c’è una differenza prima di provare a connettervi di nuovo al sito web.
Potreste non averlo considerato, ma sicuramente vale la pena provare se avete esaurito tutte le altre opzioni.
Riepilogo
Se vi imbattete nell’errore 400 Bad Request, ci sono diverse azioni per provare a risolvere il problema.
Nella stragrande maggioranza dei casi, un errore 400 Bad Request è un problema lato client causato dalla richiesta inviata al server o da un problema di memorizzazione nella cache locale. Le soluzioni descritte in questo articolo sono facili da implementare da chiunque abbia una minima conoscenza tecnica. Dovreste riuscire a far funzionare di nuovo il vostro sito web in pochissimo tempo!
A volte, tuttavia, un codice di stato 400 Bad Request potrebbe suggerire un problema generico del server. Questo può essere rapidamente diagnosticato testando il sito su diversi dispositivi. Se sospettate che si tratti di un errore lato server, non potete fare altro che continuare a provare a caricare il sito a intervalli regolari e informare l’amministratore.