In una richiesta HTTP, un server invia le risorse desiderate al vostro browser, consentendovi di vedere un determinato sito web. Se qualcosa va storto durante questo processo, potreste visualizzare un codice di stato HTTP come l’errore “411 Length Required”.
Per fortuna potete risolvere facilmente l’errore “411 Length Required”. Questo codice di stato HTTP si verifica quando il server richiede un header Content-Length, ma questo non viene specificato nella richiesta. Per risolvere questo problema, potete semplicemente definire una lunghezza del contenuto.
Date un’Occhiata alla Nostra Video-Guida all’Errore “411 Length Required”
In questo articolo vi spiegheremo il codice di stato “411 Length Required” e le sue cause. Poi vi mostreremo come individuare e risolvere questo errore. Cominciamo!
Che cos’è l’errore “411 Length Required”?
Ogni volta che fate clic su un link o cercate un URL, il vostro browser invia una richiesta al server del sito web. Il server elabora la richiesta e risponde inviando i dati richiesti.
Anche se non lo vedete, il server invia anche un codice di stato nell’header HTTP. Il vostro browser vi comunicherà i codici di stato HTTP solo se qualcosa è andato storto durante la richiesta.
Per esempio, un codice di stato HTTP comune è il 400 bad request. Si tratta di un errore generico sul lato client che può verificarsi quando si digita un URL in modo errato.
I codici di stato HTTP sono raggruppati in cinque diverse classi:
- 100s: Risposte informative
- 200s: Risposte di successo
- 300s: Codici di reindirizzamento
- 400s: Codici di errore lato client
- 500s: Codici di errore lato server
Ora che conoscete i codici di stato HTTP, parliamo dell’errore “411 Length Required”. Poiché si tratta di un errore meno comune, potreste spaventarvi.
In un errore “411 Length Required”, la vostra richiesta viene rifiutata perché manca l’header Content-Length. Se un server richiede questa informazione, non potrete accedere al sito senza di essa.
Cosa Provoca l’Errore “411 Length Required”?
In una richiesta e in una risposta HTTP, il client e il server possono inserire informazioni aggiuntive negli header HTTP. Poiché il codice di stato “411 Length Required” è un errore lato client, significa che c’è stato un problema con l’header della richiesta.
Potete usare l’header per fornire un contesto sulla richiesta, consentendo al server di personalizzare la risposta. L’header della richiesta può includere:
- Indirizzo IP di origine e numero di porta
- Tipo di contenuto
- Tipo di browser (user-agent)
- URL richiesto
Gli header HTTP possono anche definire la dimensione del corpo dell’entità. Specificando il valore Content-Length, potete comunicare al server la dimensione prevista della richiesta. Questa viene identificata con un numero decimale di ottetti.
Per esempio, potete visualizzare la lunghezza del contenuto di una pagina web facendo clic con il tasto destro del mouse su un elemento e selezionando Ispeziona. Alla voce Rete, dovreste trovare informazioni sull’header della richiesta.
In generale, la maggior parte delle richieste HTTP presenta un corpo della richiesta e un header Content-Length. Tuttavia, alcuni client scelgono di non definire la lunghezza del contenuto. Questo può essere utile quando si esegue una codifica di trasferimento a blocchi.
A volte, un server indica che richiede un header Content-Length. Quando ricevete un codice di stato HTTP “411 Length Required”, probabilmente dovrete definire questo valore per procedere con la richiesta.
Come Individuare l’Errore “411 Length Required”
Dal momento che il codice di stato “411 Length Required” è un errore del lato client, potreste non sapere se questo accade al vostro sito web. Per fortuna potete monitorare le richieste HTTP del vostro sito per assicurarvi che tutti i visitatori possano accedere ai vostri contenuti.
Con un account di hosting Kinsta, potete controllare le richieste HTTP fallite direttamente dalla vostra bacheca MyKinsta. Per farlo, potete consultare i log del vostro sito web.
Per prima cosa, aprite MyKinsta e accedete. Poi, andate su Siti e selezionate il sito web che volete analizzare. Potrete monitorare le richieste HTTP solo sul vostro sito web live, quindi assicuratevi di non fare clic sul vostro ambiente locale:
In questo modo accederete alla pagina Info, dove potrete vedere i dettagli di base del vostro sito web. Sul lato sinistro, fate clic sulla scheda Registri:
Il visualizzatore di log sarà automaticamente impostato per visualizzare i log degli errori del vostro sito. Dal menu a tendina, selezionate l’opzione access.log:
Nel log degli accessi potete visualizzare tutte le richieste del vostro sito web. Verranno mostrati la data, l’ora, i byte inviati e l’user-agent. Qui potete anche vedere i codici di stato HTTP di ogni richiesta:
Se tutto viene eseguito correttamente vedrete un codice 200. Per individuare eventuali errori “411 Length Required”, potete usare la barra di ricerca per trovare il codice di stato 411.
Come Risolvere l’Errore “411 Length Required” (4 Metodi)
Anche se potete tenere traccia dei codici di stato “411 Length Required” tramite i log del vostro sito web, tenete presente che si tratta di un problema lato client.
Ciò significa che, come tutti i codici di stato HTTP 400, l’errore è causato da impostazioni errate da parte dell’utente. Per risolvere il problema, dovete modificare la richiesta HTTP. Vediamo quattro modi per farlo.
1. Controllare l’URL Richiesto
Innanzitutto, potete provare alcuni metodi generali per risolvere i codici di stato HTTP 400. Poiché il codice “411 Length Required” è un problema lato client, potete controllare le informazioni contenute nella richiesta. In questo modo potete assicurarvi che il browser lo capisca.
Quando correggete un codice di stato 400, è bene rivedere l’URL richiesto. Se avete inserito manualmente un URL per raggiungere un sito web, l’indirizzo potrebbe contenere un errore di battitura. Per verificare se il problema è questo, provate a riscrivere l’indirizzo.
Se avete la certezza che l’URL sia corretto ma l’errore persiste, potete inserirlo in un motore di ricerca insieme a una parola chiave. Per esempio, potete trovare l’articolo di Kinsta sulla velocizzazione di un negozio WooCommerce cercando “site:kinsta.com speed up WooCommerce”:
Poiché l’errore “411 Length Required” è un problema lato client, questo è un passo fondamentale che potete compiere. Tuttavia, tenete presente che questo potrebbe non risolvere questo specifico codice di stato. Per farlo, dovrete probabilmente impostare header Content-Length.
2. Impostare un Header Content-Length
Se ricevete un codice di stato “411 Length Required”, il modo più diretto per risolvere il problema è impostare un header 411 Length Required. Poiché il server segnala che la lunghezza del contenuto è necessaria per soddisfare la richiesta, è importante includerla.
Per esempio, se state inviando una richiesta POST a example.com, potrebbe essere simile a questa:
curl --verbose -X POST https://example.com
Se ricevete il codice di stato “411 Length Required”, dovrete aggiungere l’header content-length. Questo valore è il numero di byte della richiesta. Questi byte sono rappresentati da due cifre esadecimali, quindi potete dividere il numero di cifre per due per determinare la lunghezza del contenuto.
Per esempio, “48656c6c6f21” ha 12 cifre esadecimali. Per trasformare questo valore in byte, potete dividerlo per due: la lunghezza del contenuto sarà quindi di 6 byte.
Ecco come può apparire una lunghezza del contenuto di 6 byte in una richiesta:
curl --verbose -X POST -H 'Content-Length: 6' https://example.com
Definendo la lunghezza del contenuto, probabilmente verrà rimosso il messaggio di errore “411 Length Required” e verrà inviato un codice di stato HTTP 200. In sostanza, questo significa che la richiesta è stata elaborata correttamente.
3. Cancellare la Cache del Browser
Spesso basta determinare l’header Content-Length per risolvere l’errore “411 Length Required”. Tuttavia, se continuate a ricevere questo codice di stato, ci sono altri passi da compiere.
Quando accedete per la prima volta a un sito web, il vostro browser memorizza alcuni dati. Anche dopo aver impostato un header Content-Length, questo potrebbe causare la comparsa dell’errore “411 Length Required”. Per eliminare il messaggio, provate a cancellare la cache del browser.
Se usate Google Chrome, fate clic sull’icona con i tre puntini nell’angolo in alto a destra. Quindi, selezionate Altri strumenti > Cancella dati di navigazione…:
Si aprirà una finestra pop-up che potrete usare per gestire la cronologia di navigazione, i cookie e i dati memorizzati nella cache. Selezionate le immagini e i file memorizzati nella cache, insieme a tutte le altre informazioni che volete cancellare. Infine, fate clic su Cancella dati:
Per gli utenti di Safari, potete navigare su Safari nella barra degli strumenti. Qui, selezionate Cancella cronologia:
A questo punto, potete scegliere se cancellare l’intera cronologia di navigazione, i dati dell’ultima ora o quelli degli ultimi giorni. Al termine, fate clic su Cancella cronologia:
Se volete cancellare la cache su Mozilla Firefox, trovate l’icona ad hamburger nell’angolo in alto a destra. Selezionate quindi l’opzione Cronologia:
Nella pagina successiva, andate su Cancella la cronologia recente:
Selezionate la Cache e tutti gli altri dati che volete cancellare. Dopodiché fate clic su OK:
Ora potete riprovare la vostra richiesta HTTP per vedere se l’errore “411 Length Required” è stato risolto!
4. Disinstallare gli Aggiornamenti o le Estensioni Recenti
Un altro modo per risolvere l’errore “411 Length Required” è quello di disabilitare le estensioni del browser. A volte, alcune estensioni possono interferire con il vostro browser, rendendolo incapace di interpretare le richieste. Se avete installato un’estensione di recente, potete pensare di rimuoverla.
Se usate Google Chrome, questo processo sarà simile alla cancellazione della cache del browser. Per prima cosa, trovate l’icona del menu e selezionate Altri strumenti > Estensioni:
Dall’elenco delle estensioni, cercate quella che volete rimuovere. Potete rimuoverle completamente o semplicemente disattivarle utilizzando il cursore:
Allo stesso modo, i nuovi aggiornamenti software possono causare codici di errore HTTP. Per disinstallare un aggiornamento recente di Windows, potete accedere alla scheda Windows Update sotto Aggiornamento e sicurezza nelle impostazioni dell’app.
Se avete un sistema operativo macOS, il processo è molto più complicato. Per ripristinare un aggiornamento, dovrete avere un backup di Time Machine precedente all’aggiornamento. Poi, potrete ripristinare i dati dal backup.
Tenete presente che questo metodo dovrebbe essere l’ultima risorsa dopo aver provato altre soluzioni. Poiché state tornando a una versione precedente del software, probabilmente perderete importanti funzionalità e correzioni di bug.
Riepilogo
Può essere frustrante quando un server rifiuta la vostra richiesta HTTP, visualizzando un errore “411 Length Required”. Senza specificare un header Content-Length, potreste non essere in grado di ottenere informazioni dal server. Tuttavia, ci sono alcuni modi per risolvere questo problema.
Ecco come risolvere l’errore “411 Length Required”:
- Controllare l’URL richiesto.
- Impostare un header Content-Length.
- Cancellare la cache del browser.
- Disinstallare gli aggiornamenti o le estensioni recenti.
Per assicurarvi che ogni persona possa accedere al vostro sito, potreste attivare il monitoraggio delle prestazioni (APM). Con un piano di hosting Kinsta, avrete a disposizione uno dei migliori strumenti APM sul mercato. Grazie al nostro cruscotto APM, potete esaminare le richieste esterne e risolvere immediatamente gli errori HTTP!