errore 411 Length Required indica che il server rifiuta la richiesta perché non è stata indicata una lunghezza del contenuto accettabile.
Questa guida analizza errore 411 Length Required con controlli progressivi, verifiche incrociate e modifiche reversibili. Non inviare password, cookie, token, chiavi private, codici 2FA o file di configurazione completi nei ticket.
Che cosa significa
Il server rifiuta la richiesta perché non è stata indicata una lunghezza del contenuto accettabile.
Il messaggio visibile è soltanto il punto di partenza. Per interpretare correttamente errore 411 Length Required bisogna identificare il sistema che ha prodotto il codice, confrontare l’orario con i log e distinguere una causa persistente da un evento temporaneo. Una diagnosi basata su dati riduce il rischio di modificare il componente sbagliato.
Come riconoscere il problema
- Risposta http 411.
- Errore su post o put.
- Api funzionante con altri client.
- Proxy intermedio.
- Header content-length assente.
La presenza di uno solo di questi segnali non dimostra automaticamente la causa. Confronta almeno due elementi indipendenti, per esempio il messaggio del client e il log del server, oppure il risultato pubblico e quello ottenuto direttamente dall’origine.
Cause più frequenti
1. Client che non calcola la lunghezza
Client che non calcola la lunghezza è una possibile origine di errore 411 Length Required. Controlla questa ipotesi utilizzando il messaggio completo, l’orario e i dati del livello coinvolto. Non considerare sufficiente la vicinanza temporale con una modifica: verifica che il comportamento cambi quando la singola configurazione viene ripristinata o corretta.
2. Transfer encoding non supportato
Transfer encoding non supportato è una possibile origine di errore 411 Length Required. Controlla questa ipotesi utilizzando il messaggio completo, l’orario e i dati del livello coinvolto. Non considerare sufficiente la vicinanza temporale con una modifica: verifica che il comportamento cambi quando la singola configurazione viene ripristinata o corretta.
3. Proxy che rimuove header
Proxy che rimuove header è una possibile origine di errore 411 Length Required. Controlla questa ipotesi utilizzando il messaggio completo, l’orario e i dati del livello coinvolto. Non considerare sufficiente la vicinanza temporale con una modifica: verifica che il comportamento cambi quando la singola configurazione viene ripristinata o corretta.
4. Body generato in streaming
Body generato in streaming è una possibile origine di errore 411 Length Required. Controlla questa ipotesi utilizzando il messaggio completo, l’orario e i dati del livello coinvolto. Non considerare sufficiente la vicinanza temporale con una modifica: verifica che il comportamento cambi quando la singola configurazione viene ripristinata o corretta.
5. Richiesta senza contenuto ma metodo errato
Richiesta senza contenuto ma metodo errato è una possibile origine di errore 411 Length Required. Controlla questa ipotesi utilizzando il messaggio completo, l’orario e i dati del livello coinvolto. Non considerare sufficiente la vicinanza temporale con una modifica: verifica che il comportamento cambi quando la singola configurazione viene ripristinata o corretta.
6. Server con requisito specifico
Server con requisito specifico è una possibile origine di errore 411 Length Required. Controlla questa ipotesi utilizzando il messaggio completo, l’orario e i dati del livello coinvolto. Non considerare sufficiente la vicinanza temporale con una modifica: verifica che il comportamento cambi quando la singola configurazione viene ripristinata o corretta.
Diagnosi passo per passo
- Salvare header e body. Esegui il controllo in sola lettura quando possibile e salva il risultato con data e ora. Confrontalo con una configurazione funzionante o con il valore precedente, quindi passa al punto successivo soltanto se il dato raccolto non spiega ancora l’errore.
- Controllare content-length. Esegui il controllo in sola lettura quando possibile e salva il risultato con data e ora. Confrontalo con una configurazione funzionante o con il valore precedente, quindi passa al punto successivo soltanto se il dato raccolto non spiega ancora l’errore.
- Confrontare un client funzionante. Esegui il controllo in sola lettura quando possibile e salva il risultato con data e ora. Confrontalo con una configurazione funzionante o con il valore precedente, quindi passa al punto successivo soltanto se il dato raccolto non spiega ancora l’errore.
- Verificare transfer-encoding. Esegui il controllo in sola lettura quando possibile e salva il risultato con data e ora. Confrontalo con una configurazione funzionante o con il valore precedente, quindi passa al punto successivo soltanto se il dato raccolto non spiega ancora l’errore.
- Testare direttamente l’origine. Esegui il controllo in sola lettura quando possibile e salva il risultato con data e ora. Confrontalo con una configurazione funzionante o con il valore precedente, quindi passa al punto successivo soltanto se il dato raccolto non spiega ancora l’errore.
- Controllare proxy e waf. Esegui il controllo in sola lettura quando possibile e salva il risultato con data e ora. Confrontalo con una configurazione funzionante o con il valore precedente, quindi passa al punto successivo soltanto se il dato raccolto non spiega ancora l’errore.
- Riprodurre con curl –data-binary. Esegui il controllo in sola lettura quando possibile e salva il risultato con data e ora. Confrontalo con una configurazione funzionante o con il valore precedente, quindi passa al punto successivo soltanto se il dato raccolto non spiega ancora l’errore.
Metodo sicuro di diagnosi
Prima di modificare la configurazione, registra il messaggio completo, la data e l’ora con fuso, l’URL o il servizio coinvolto, l’ultima modifica nota e il risultato ottenuto con un secondo strumento. Conserva request ID, transaction ID, Message-ID, Ray ID, rule ID e codici applicativi quando presenti: questi identificativi collegano la schermata ai log senza richiedere password, cookie, token, chiavi private o codici di autenticazione.
Applica una sola modifica alla volta. Dopo ogni intervento ripeti la stessa operazione con gli stessi dati di test e controlla i log dello stesso intervallo temporale. Cambiare contemporaneamente DNS, cache, PHP, plugin, firewall, database, client e proxy impedisce di capire quale variazione abbia prodotto il risultato e rende più difficile un rollback affidabile.
Controllo incrociato dei livelli
Un errore visibile nel browser o nel client può essere generato da livelli differenti. Per il web confronta browser, curl, CDN, web server, PHP e applicazione. Per WordPress confronta frontend, wp-admin, Site Health, strumenti sviluppatore, WP-CLI e log. Per FTP separa sessione di controllo, canale dati, firewall e account. Per la posta confronta client, Webmail, coda SMTP, Track Delivery, DNS e risposta del destinatario.
Verifica sempre quale sistema ha prodotto il codice. Header, hostname, percorso del log, stack trace e testo esteso aiutano a distinguere un errore dell’edge da uno dell’origine, un rifiuto del proprio server da uno remoto e un problema applicativo da uno di rete. Questa distinzione evita interventi sul componente sbagliato.
Backup e reversibilità
Prima di cambiare file, record DNS, database, plugin o regole di sicurezza crea una copia leggibile e annota il valore precedente. Per DNS registra TTL e nameserver autoritativi. Per firewall e proxy conserva l’espressione originale della regola. Per WordPress salva il componente e le opzioni coinvolte. Una modifica reversibile consente di interrompere il test senza aggiungere un secondo guasto.
Non usare permessi 777, non disattivare globalmente WAF o antispam e non ridurre stabilmente la sicurezza TLS per ottenere una pagina funzionante. Le eccezioni devono essere limitate al percorso, parametro, hostname o sorgente confermati dai log. Quando una prova richiede una misura temporanea, annota il momento di attivazione e ripristinala appena concluso il test.
Come raccogliere prove utili
Esporta testo e dati originali quando possibile: header HTTP, file .eml, bounce completo, output DNS, righe di log, stack trace e codici di risposta sono più utili di uno screenshot ritagliato. Oscura credenziali e dati personali, ma lascia visibili data, server, status, identificativi e descrizione tecnica dell’errore.
Ripeti il controllo con un caso minimo. Per una API usa pochi campi; per WordPress prova una funzione core; per FTP trasferisci un file di testo; per la posta invia un messaggio semplice senza allegati. Aggiungi poi complessità progressivamente fino a individuare il punto nel quale compare il problema.
Cache, sessioni, code e ritardi
Non tutti i cambiamenti diventano visibili immediatamente. DNS, cache CDN, cache LiteSpeed, sessioni PHP, connessioni persistenti, code SMTP, cron e lock possono continuare a mostrare lo stato precedente. Verifica il TTL o la durata della cache, usa un nuovo identificativo di richiesta e controlla se il sistema sta elaborando una copia già accodata.
Un retry riuscito non annulla automaticamente l’errore precedente nei log. Confronta sempre l’identificativo della nuova richiesta con quello vecchio e verifica che il risultato sia relativo alla stessa URL, casella, query o operazione. Questa attenzione evita di dichiarare risolto un problema sulla base di una prova differente.
Verifica prolungata dopo la correzione
Una singola prova riuscita non dimostra che il problema sia definitivamente risolto. Ripeti l’operazione con una nuova sessione, un secondo utente o una seconda rete quando applicabile. Considera cache, TTL DNS, code SMTP, cron, lock, connessioni persistenti e processi pianificati che possono mostrare il vecchio comportamento per un certo periodo.
Conserva temporaneamente backup, valori precedenti ed estratti dei log. Se l’anomalia ricompare, confronta l’orario con backup, aggiornamenti, rinnovi SSL, rotazioni DNS, picchi di traffico, importazioni e servizi esterni. Documenta infine causa, correzione e prova finale per rendere più rapido un futuro intervento.
Procedura di risoluzione
- Inviare content-length corretto. Applica la correzione in modo mirato, conserva il valore precedente e ripeti immediatamente il test originale. Controlla lo stesso intervallo nei log e verifica che sicurezza, autenticazione, disponibilità e integrità dei dati siano rimaste operative.
- Usare un encoding supportato. Applica la correzione in modo mirato, conserva il valore precedente e ripeti immediatamente il test originale. Controlla lo stesso intervallo nei log e verifica che sicurezza, autenticazione, disponibilità e integrità dei dati siano rimaste operative.
- Correggere il client http. Applica la correzione in modo mirato, conserva il valore precedente e ripeti immediatamente il test originale. Controlla lo stesso intervallo nei log e verifica che sicurezza, autenticazione, disponibilità e integrità dei dati siano rimaste operative.
- Impedire al proxy di rimuovere header necessari. Applica la correzione in modo mirato, conserva il valore precedente e ripeti immediatamente il test originale. Controlla lo stesso intervallo nei log e verifica che sicurezza, autenticazione, disponibilità e integrità dei dati siano rimaste operative.
- Usare il metodo api previsto. Applica la correzione in modo mirato, conserva il valore precedente e ripeti immediatamente il test originale. Controlla lo stesso intervallo nei log e verifica che sicurezza, autenticazione, disponibilità e integrità dei dati siano rimaste operative.
- Aggiornare libreria e integrazione. Applica la correzione in modo mirato, conserva il valore precedente e ripeti immediatamente il test originale. Controlla lo stesso intervallo nei log e verifica che sicurezza, autenticazione, disponibilità e integrità dei dati siano rimaste operative.
- Ritestare payload vuoto e non vuoto. Applica la correzione in modo mirato, conserva il valore precedente e ripeti immediatamente il test originale. Controlla lo stesso intervallo nei log e verifica che sicurezza, autenticazione, disponibilità e integrità dei dati siano rimaste operative.
Controlli finali
- Il test che generava errore 411 Length Required ora completa correttamente.
- Il nuovo risultato è confermato da log o strumenti indipendenti.
- Non sono comparsi nuovi errori su funzioni collegate.
- Le protezioni di sicurezza restano attive e non esistono eccezioni globali.
- La configurazione finale e l’eventuale rollback sono documentati.
Prevenzione
- Mantieni backup verificati prima di aggiornamenti e migrazioni.
- Monitora errori, risorse e scadenze con alert proporzionati.
- Documenta DNS, versioni e dipendenze senza memorizzare password in chiaro.
- Prova modifiche importanti in staging e applicale in produzione una alla volta.
- Rivedi periodicamente regole, plugin, client e servizi non più utilizzati.
Errori da evitare
- Non disattivare globalmente firewall, WAF, antispam o verifica TLS.
- Non usare permessi 777 e non aumentare limiti senza misurare la causa.
- Non ripetere continuamente la stessa operazione quando può creare duplicati o ulteriore carico.
- Non condividere password, token, cookie, chiavi private o file di configurazione completi.
- Non chiudere l’intervento dopo una sola prova senza controllare log, cache, code e ricorrenza.
Quando contattare l’assistenza Xlogic
Apri un ticket quando il problema persiste dopo i controlli di base, coinvolge più servizi oppure richiede log e configurazioni non disponibili nel pannello. Indica:
- dominio, hostname o servizio coinvolto;
- data e ora con fuso;
- messaggio completo e codice;
- identificativi come Ray ID, Message-ID, request ID, transaction ID o rule ID;
- controlli già eseguiti e modifiche recenti.
Non inviare credenziali. I dati tecnici sopra indicati sono sufficienti per iniziare la diagnosi.
Fonti tecniche ufficiali
Domande frequenti su errore 411 Length Required
Che cosa indica errore 411 Length Required?
Il server rifiuta la richiesta perché non è stata indicata una lunghezza del contenuto accettabile.
Qual è il primo controllo da eseguire?
Registra il messaggio completo e poi salvare header e body, senza modificare più componenti contemporaneamente.
È corretto disattivare protezioni o aumentare limiti?
No. Una misura temporanea può servire soltanto come test controllato; la soluzione definitiva deve correggere la causa e mantenere operative le protezioni.
Quali dati servono all’assistenza?
Indica dominio o servizio, orario, errore completo, identificativi tecnici e controlli già eseguiti, senza inviare password, cookie, token o chiavi private.
Come verificare che il problema sia risolto?
Ripeti l’operazione originale, controlla i log e conferma che sia possibile ritestare payload vuoto e non vuoto senza nuovi errori.