Come si ripara un errore 406 e si trova l'origine del problema?

Procédure

Introduzione

A volte si verificano errori sui server e sui client, solitamente indicati come risposte HTTP o codici di stato. L'errore "Error 406" o "406 Not Acceptable" è una di queste risposte HTTP.

Incontrare l'errore 406 durante la navigazione di un sito può essere frustrante. Peggio ancora, vederlo sul proprio sito web può essere allarmante per il proprietario di un sito o di un'applicazione. Oltre ad avere un aspetto poco professionale e sconcertante, qualsiasi risposta HTTP, compreso l'errore 406, può portare alla perdita di vendite e di utenti.

Questo articolo analizza le basi dell'errore "406 non accettabile", le sue cause, le modalità di risoluzione e le azioni da intraprendere per evitare che si verifichi in futuro.

Che cos'è l'errore 406?

Fortunatamente, il messaggio di errore HTTP "406 Not Acceptable" non è così comune come altri errori del server, come il ben noto errore 404 (che di solito indica una pagina inesistente) o anche gli errori HTTP 301 o 500. Di conseguenza, non si dovrebbe incontrare questo messaggio con la stessa frequenza.

Tuttavia, anche se raro, l'errore 406 può causare problemi al vostro sito web quando si verifica. Di solito si manifesta nel modo seguente:

Come si ripara un errore 406 e si trova l'origine del problema?

L'aspetto e il testo esatto del messaggio di errore 406 possono variare a seconda del sito web, dell'host e del browser utilizzato per accedere al sito. Tuttavia, l'errore 406 può fornire un indizio sull'origine del problema. In alcuni casi, si tratta semplicemente di un errore "406 Not Acceptable" (406 non accettabile) senza alcuna informazione aggiuntiva che possa aiutare a risolvere il problema.

In sintesi, si tratta essenzialmente di un problema di comunicazione tra il server e il browser o la macchina utilizzata per visualizzare l'applicazione web. Il browser non riesce a interpretare i dati ricevuti perché non soddisfano determinati requisiti.

Quali sono le cause dell'errore 406?

Ogni volta che si apre una pagina web, il browser (come Safari, Firefox, Brave, Chrome o Internet Explorer) invia una richiesta al server della pagina per recuperare il contenuto del sito e i file del database. Il browser funge da messaggero tra l'utente e il server: dice al server ciò che l'utente vuole vedere e, auspicabilmente, le informazioni corrette vengono restituite.

Durante questa prima richiesta, il browser informa il server dei formati di file che può accettare. Si tratta di una richiesta nota come Accept-header, che invita il server a fornire i file nei formati appropriati per visualizzare l'intero sito o applicazione web, a partire dall'intestazione.

A volte il server invia una risposta che non è nel formato appropriato o che viola una regola impostata dal browser o dal computer client. In questo caso, nella finestra del browser appare un errore 406, che indica che il server non sta fornendo i dati appropriati.

Ecco alcuni esempi di "formati errati" e "violazioni di regole" che possono verificarsi con le richieste di intestazione:

Accept-ranges: alcuni server adottano misure di sicurezza o consentono solo un intervallo specifico di dimensioni dei file nella risposta. Se la risposta tenta di inviare troppi byte al di fuori dell'intervallo consentito, si verificherà un errore 406.

Accept-encoding: questa sezione dell'intestazione è destinata alla compressione dei file per facilitare il trasferimento rapido dal server al browser. Alcuni formati di compressione non sono accettati, con conseguente errore 406.

Accept-charset: si riferisce a un insieme di caratteri o al modo in cui i file del sito utilizzano il codice (come CSS e HTML) e lo trasformano in caratteri comprensibili. Esistono tabelle di caratteri diverse per lingue e simboli diversi.

Accept-language: è un parametro diverso da Accept-charset, che si concentra sulle lingue internazionali.

Violazione del tipo MIME: a volte il browser richiede al server un tipo MIME specifico. Se il server non è in grado di fornire il tipo MIME richiesto, come ad esempio le immagini JPEG, si verifica un errore 406.

Il modo principale per gestire e correggere un errore 406 è ispezionare il codice sorgente per individuare eventuali problemi nelle intestazioni Accept-, Request- e Response-.

Il modo più semplice per ispezionare le intestazioni Accept e Response è aprire una pagina Web nel browser, fare clic con il pulsante destro del mouse e selezionare Inspect.

Andare quindi a Rete > Intestazioni per visualizzare tutte le richieste di quella pagina web.

Come si ripara un errore 406 e si trova l'origine del problema?

Di solito è possibile selezionare una richiesta dall'elenco lungo per vedere le intestazioni di Richiesta e Risposta per quella particolare richiesta.

Come si ripara un errore 406 e si trova l'origine del problema?

Si può anche chiedere assistenza al proprio sviluppatore web per esaminare il codice sorgente. Tuttavia, l'ispezione del codice sorgente è molto più semplice se si ha accesso a strumenti di debug e di pulizia del database, i cui dettagli verranno illustrati più avanti in questo articolo.

Come già detto, un errore "406 non accettabile" indica che il client ha inviato una richiesta valida al server, ma con un requisito specifico che il server non è stato in grado di soddisfare. Questo particolare requisito della richiesta originale è stato formulato nell'intestazione HTTP Accept-.

Questo ci porta a considerare alcune cause potenziali:

  • Il server non ha fornito il tipo MIME richiesto o i formati appropriati, come un video JPEG o mp4.
  • Il server non ha restituito la lingua corretta (Accept-language). Ad esempio, potrebbe aver restituito una risposta in tedesco quando il browser richiedeva il francese.
  • Il server ha utilizzato un metodo o un formato di compressione errato in risposta alla richiesta Accept-encoding.
  • Il server ha trasmesso troppi byte che non corrispondevano alla richiesta Accept-ranges.
  • Il server non ha fornito caratteri comprensibili, il che potrebbe essere un problema con la richiesta Accept-charset del browser.

Esistono altri possibili motivi per cui si potrebbe verificare l'errore 406, anche se sono meno comuni. L'elenco precedente mostra i motivi più comuni, dal più comune al meno comune. I primi due motivi sono in genere i più probabili, quindi è consigliabile concentrare gli sforzi sulla ricerca di eventuali violazioni del tipo MIME o di problemi di linguaggio di accettazione.

In generale, i proprietari di siti web dovrebbero essere consapevoli di questi problemi e delle violazioni di formato, poiché possono essere causati da varie anomalie nei file del sito. Spesso queste situazioni sono il risultato di un errore umano, come l'inserimento accidentale di codice errato, la cancellazione involontaria di codice necessario o una configurazione errata del server. L'errore 406 può verificarsi anche quando specifiche impostazioni o regole di sicurezza bloccano la trasmissione di contenuti dal server.

Come si può correggere l'errore 406?

Ora che abbiamo chiarito le ragioni alla base del verificarsi dell'errore 406, esaminiamo gli approcci migliori per risolverlo e per evitare che si ripeta.

Queste strategie coprono le cause lato client (quando un utente commette un errore o la macchina non funziona correttamente), le cause lato server e i problemi legati alla piattaforma, come le estensioni difettose.

Assicuratevi che l'URL sia corretto

Il primo suggerimento può sembrare semplice, ma è l'opzione di risoluzione dei problemi più rapida e si concentra sui problemi sul lato client, cioè sul vostro computer.

Sebbene l'errore 404 sia molto più comune dell'errore 406 in questa situazione, si può comunque riscontrare un errore "406 Not Acceptable" se l'URL del sito web è valido. In alcuni casi, questo errore può essere il risultato di una strana interpretazione della richiesta da parte del browser. Ad esempio, l'aggiunta di "JSON" o "PHP" alla fine di un URL può essere interpretata come una richiesta di questi formati specifici, anche se il client non ne ha bisogno.

Per risolvere il problema, riesaminare l'URL precedentemente utilizzato che ha causato l'errore. Provate a inserirlo di nuovo o esplorate altri sottodomini del sito web per vedere se una singola pagina non viene visualizzata.

Annullare le recenti modifiche al CMS

È ora di esaminare il sistema utilizzato per i siti web o le applicazioni. È possibile che il vostro sistema di gestione dei contenuti, come WordPress, sia la causa diretta di un errore "406 Not Acceptable" dovuto a una complicazione con qualcosa nei file del sito.

Se utilizzate WordPress o qualsiasi altro sistema di gestione dei contenuti, controllate la data dell'ultimo aggiornamento. WordPress ha una solida infrastruttura predefinita progettata per evitare questo tipo di errore, qualunque cosa accada.

Tuttavia, estensioni specifiche, temi o codice modificato manualmente potrebbero produrre situazioni in cui i file del sito violano le richieste del client o del server. Un semplice aggiornamento all'ultima versione del vostro CMS può risolvere immediatamente il problema.

Per scoprire se si tratta del vostro CMS, iniziate ad annullare tutti gli aggiornamenti recenti dei file principali. Come forse già sapete, WordPress invia regolarmente aggiornamenti al suo sistema. La maggior parte di questi aggiornamenti avviene automaticamente, ma per le versioni più vecchie è necessario fare clic su un pulsante.

Inoltre, WordPress e altri CMS utilizzano diversi elementi mobili come plugin, temi ed estensioni. Anche questi elementi vengono aggiornati regolarmente, quindi potrebbe essere necessario cancellarne alcuni.

Per tutti i sistemi diversi da WordPress, cercate "nome della piattaforma + come fare il rollback" in un motore di ricerca come Google.

Il modo più semplice per ripristinare una vecchia versione del CMS è ripristinare un backup seguendo questa documentazione.

Disinstallazione e reinstallazione di plugin, temi ed estensioni

Le estensioni e i temi di WordPress aggiungono codice extra ai file del sito, che interagisce con i file principali di WordPress. Anche se di solito non ci sono problemi con le estensioni affidabili, a volte può verificarsi un conflitto. Un plugin, un tema o un'estensione di terze parti potrebbe essere la causa dell'errore 406.

Per identificare l'estensione, seguire questa documentazione.

Si consiglia di eseguire le azioni sulle estensioni prima di passare ai temi. La disattivazione o la modifica dei temi può comportare una maggiore riorganizzazione dei contenuti
.

Analizzare i log del server

I suggerimenti precedenti si sono concentrati sulla risoluzione dei problemi dal lato del client e del CMS. Ora analizzeremo i problemi sul lato server. Questi suggerimenti, e quelli che seguiranno, sono utili se non si utilizza un CMS o se si sospetta che l'errore 406 non sia legato al CMS o al computer client.

Il primo passo nella risoluzione dei problemi lato server è controllare i log. Indipendentemente dal tipo di applicazione web, CMS o sistema di web design utilizzato, tutti dispongono di registri lato server.

I log delle applicazioni registrano la storia completa o recente dell'applicazione web, fornendo informazioni su ogni query di database, sui risultati forniti, sulle pagine richieste e altro ancora. I log del server, invece, contengono informazioni sullo stato di salute del server o dell'hardware utilizzato per eseguire l'applicazione web.

È possibile visualizzare i log error.log e access. log consultando questa documentazione.

L'immagine seguente mostra un esempio di log collegato a un errore 406:

Come si ripara un errore 406 e si trova l'origine del problema?

In questo esempio, è stato il sistema ModSecurity a rifiutare la richiesta e a generare l'errore 406. È quindi necessario controllare la regola che è stata generata e correggere il problema sul sito o disattivare la regola se si ritiene che non abbia alcun impatto sulla sicurezza del sito web.

Prevenire gli errori 406 in futuro

Non c'è nulla che non si possa risolvere con un po' di risoluzione dei problemi. Quando l'errore 406 si verifica sul vostro sito web o applicazione, può essere più preoccupante. In questo caso, è fondamentale controllare il server e i file del sito CMS.

Per evitare che questo errore si ripeta in futuro, ecco alcuni consigli per mantenere puliti i database e i file del sito:

  1. Limitare l'installazione di plugin, temi ed estensioni solo agli elementi necessari e affidabili. Mantenete sempre questi elementi al minimo indispensabile.

  2. Evitate di modificare i file principali di WordPress, a meno che non sia assolutamente necessario e che sappiate cosa state facendo.

  3. Pianificate di eseguire regolarmente una pulizia del database e un ottimizzatore del sito. Si consiglia di farlo ogni mese e di trovare un'estensione di pulizia che funzioni in background.

  4. Impostate dei backup automatici del vostro sito web o della vostra applicazione. In questo modo, in caso di conflitto di codice o di errore, potrete ripristinare una versione precedente senza stress.

  5. Eseguite sempre un backup manuale del vostro sito prima di aggiornare WordPress e le sue estensioni, anche se sono presenti backup automatici. È inoltre consigliabile eseguire un backup prima di modificare i file o aggiungere nuovo codice al sito.

Conclusione

Ora sapete come :

  • Riconoscere e comprendere l'origine dell'errore 406 Not Acceptable (non accettabile).
  • Identificare le potenziali cause di questo errore, sia esso legato a Accept-ranges, Accept-encoding, Accept-charset, Accept-language o a una violazione del tipo MIME.
  • Diagnosticare e correggere l'errore 406 controllando l'URL, annullando le recenti modifiche al CMS, disinstallando e reinstallando plugin o temi e analizzando i log del server.
  • Prevenire l'errore 406 limitando le installazioni di plugin, evitando di modificare i file principali del CMS, programmando regolari pulizie del database e impostando backup automatici e manuali.

🔍🛠️ Grazie a questi consigli pratici, ora siete in grado di affrontare e prevenire efficacemente l'errore 406 Not Acceptable, garantendo così un'esperienza utente fluida e professionale sul vostro sito web. 🚀

Vi ringrazio per l'attenta lettura e spero che questo articolo vi abbia fornito le chiavi necessarie per gestire al meglio gli errori del server. Se avete domande o volete condividere la vostra esperienza con l'errore 406, non esitate a lasciare un commento qui sotto. Il vostro feedback è prezioso e ci aiuta a migliorare continuamente il nostro servizio!

Vota questo articolo :

1/5 | 1 parere

Questo articolo vi è stato utile ?

Article utile

Article non utileNo

Vous souhaitez nous laisser un commentaire concernant cet article ?

Si cela concerne une erreur dans la documentation ou un manque d'informations, n'hésitez pas à nous en faire part depuis le formulaire.

Pour toute question non liée à cette documentation ou problème technique sur l'un de vos services, contactez le support commercial ou le support technique

MerciMerci ! N'hésitez pas à poser des questions sur nos documentations si vous souhaitez plus d'informations et nous aider à les améliorer.


Vous avez noté 0 étoile(s)

Articoli simili

0mn lettura

Errore Cloudflare 524: si è verificato un timeout

3mn lettura

Come correggere un errore 500 sul vostro sito con il pannello LWS

10mn lettura

Come si correggono i codici di errore HTTP?

0mn lettura

Errore 404, cos'è e come correggerlo


Fate una domanda al team LWS e alla sua comunità