Inizio
/
Assistenza sito web
/
Come risolvere l'errore 406 Not Acceptable: 7 metodi

Come risolvere l'errore 406 Not Acceptable: 7 metodi

Imbattersi nei messaggi di errore è una delle cose più fastidiose: interrompe le tue attività online, ti impedisce di completare gli acquisti online e può causare perdite di fatturato o di traffico se influisce sul tuo sito web.

Sebbene non sia comune come altri errori, come 404 Not Found500 Internal Server Error, 406 Not Acceptable è altrettanto frustrante e potenzialmente dannoso. Pertanto, non dovresti sottovalutarlo, soprattutto se compare sul tuo sito web.

Questa guida ti aiuterà a capire cos’è l’errore 406 Not Acceptable, quali sono i fattori scatenanti più comuni e come risolverlo. Cominciamo subito.

L’errore 406 Not Acceptable è un codice di stato HTTP che indica che il server non può fornire una risposta che corrisponda ai requisiti del client (browser). Questi requisiti sono in genere definiti nelle intestazioni “Accept” della richiesta originale, che specificano i tipi di contenuto che il client può elaborare.

In altre parole, il codice di risposta dell’errore client 406 significa che il browser ha richiesto un contenuto in un formato che il server non è in grado di fornire e pertanto non è stato in grado di fornire una risposta accettabile.

Quando un client, come un browser web, fa una richiesta a un server, invia delle intestazioni che descrivono il tipo di risposta che può accettare. Queste intestazioni di richiesta includono:

  • Accept;
  • Accept-Language;
  • Accept-Encoding e altri.

Il server tenta quindi di trovare una risposta adatta che corrisponda a questi criteri. Se la risposta è accettabile, vedrai il contenuto richiesto. Tuttavia, se la risposta non soddisfa i requisiti, il tuo browser potrebbe ritenere la risposta del server non adatta e produrre il codice di errore 406 Not Acceptable.

È importante notare che i codici di stato della risposta HTTP 4XX non sono considerati risposte di errore del server. Piuttosto, sono prodotti dal browser dopo aver stabilito che la risposta del server non soddisfa i valori accettabili definiti nella richiesta originale. Di seguito è riportato un esempio della pagina di errore 406 prodotta da un browser.

Errore HTTP 406 Not Acceptable

Puoi controllare queste intestazioni usando gli strumenti per sviluppatori del tuo browser. Ecco un esempio di come potrebbero apparire le intestazioni di una risposta 406:

Response Headers:
- Status: 406 Not Acceptable
- Content-Type: text/html; charset=UTF-8
- Date: Tue, 04 Mar 2025 12:00:00 GMT
- Server: Apache/2.4.41 (Ubuntu)
- Vary: Accept-Encoding

Queste intestazioni indicano che il server ha tentato di trovare un tipo di contenuto adatto in base alla richiesta del client, ma non è riuscito a farlo. Comprendere come interagiscono queste intestazioni è fondamentale per diagnosticare e risolvere l’errore 406.

Cosa causa l’errore 406 Not Acceptable?

Per definizione, l’errore 406 Not Acceptable si verifica quando la risposta del server non riesce a corrispondere ai parametri della risorsa richiesta specificati nelle intestazioni Accept. Pertanto, è naturale supporre che il browser stia inviando richieste non configurate correttamente o che il server non contenga risorse nel formato richiesto.

Tuttavia, la causa dell’errore potrebbe essere un po’ più complessa e provenire da varie fonti. Possono includere:

  • Header errati: Il client potrebbe inviare header che specificano tipi di contenuto che il server non può fornire.
  • URL errati: Anche un piccolo errore di battitura nell’URL può innescare un errore 406.
  • Plugin o temi difettosi: Per i siti web creati con un CMS come WordPress o Joomla, i plugin o le estensioni potrebbero entrare in conflitto con la capacità del server di fornire contenuti. Questi conflitti possono derivare da plugin obsoleti o mal codificati, che portano a un errore 406.
  • Errori di negoziazione dei contenuti: Il server potrebbe non essere in grado di soddisfare le preferenze di contenuto del client a causa di rigide regole di negoziazione dei contenuti. Ciò si verifica quando i tipi di contenuto disponibili del server non sono in linea con ciò che il client può accettare.
  • Database danneggiato: Un database danneggiato può causare l’invio di dati incompleti o errati al client, con conseguente errore 406.
  • Problemi lato server: Impostazioni non configurate correttamente e limitazioni dei tipi MIME consentiti sul server possono portare al codice di errore 406.

Come risolvere l’errore 406 Not Acceptable: 7 metodi

Ora che abbiamo individuato i problemi che possono causare l’errore HTTP 406, è il momento di scoprire le soluzioni più comuni.

Come risolvere l'errore 406 Not Acceptable: 7 modi

Controlla l’URL richiesto

Potrebbe sembrare troppo semplice, ma correggere l’URL richiesto è la soluzione più immediata e semplice per risolvere l’errore 406 Not Acceptable.

Un URL non corretto o inesistente di solito genera l’errore 404 Not Found. In alcuni casi, tuttavia, l’URL potrebbe essere corretto ma contenere una stringa che richiede tipi di risorse specifici che non esistono sul server. Ecco un esempio:

https://siteground-tutorials.com/products/view.php?id=123&category=books&name=The%20Art%20of%20War

In questo esempio, il dominio siteground-tutorials.com è corretto, ma l’indirizzo URL richiede un file PHP che non può essere servito, generando l’errore 406.

URL non corretto che causa l'errore HTTP 406

Pertanto, il primo passo da compiere per risolvere l’errore 406 Not Acceptable è quello di controllare attentamente l’URL inviato.

Esegui il debug della tua applicazione

I Content Management System (CMS) come WordPress, sono applicazioni complesse per siti che utilizzano vari linguaggi di programmazione, script, plugin ed estensioni. Con così tante parti in movimento, possono verificarsi conflitti sporadici, impedendo a un sito di restituire una risposta corretta a una richiesta HTTP, con conseguente codice di errore HTTP 406.

Sviluppare l’abitudine di usare i log di debug è essenziale per identificare e risolvere rapidamente tutti i tipi di errori sul tuo sito web, il che ti farà risparmiare un sacco di tempo e fatica. Le specifiche per abilitare e leggere i log di debug variano a seconda del CMS su cui è costruito il tuo sito web.

Per WordPress, leggi questa guida dettagliata su come abilitare i log di debug integrati.

Registri di debug di WordPress

Esegui il rollback degli aggiornamenti CMS recenti (WordPress e altri CMS)

Aggiornamenti recenti ai file core o ai plugin del CMS potrebbero causare problemi di compatibilità che influenzano le risposte HTTP del tuo sito web. Se i problemi sono iniziati dopo aver aggiornato il tuo sito web, considera di riportarlo a una versione precedente.

Detto questo, WordPress e alcune altre applicazioni CMS non hanno meccanismi di rollback nativi. Tuttavia, un plugin come WP Rollback può aggiungere questa funzionalità. Una volta installato, il plugin incorporerà un pulsante Rollback per ogni tema e plugin, e tornare a una versione precedente è semplice come un singolo click.

Rollback dei plugin di WordPress

Puoi anche considerare di ripristinare un backup per annullare eventuali aggiornamenti che hanno causato l’errore. I backup possono essere facilitati tramite plugin o un sistema di backup lato server.

Con SiteGround, hai un sistema di backup stabile e affidabile che ti consente di ripristinare il tuo sito web all’istante e annullare qualsiasi modifica imprevista. Per imparare a usarlo, leggi questo tutorial dello strumento di backup.

Disattivare plugin, temi o estensioni (WordPress e altri CMS)

I plugin e i temi migliorano la funzionalità del tuo sito web, ma a volte possono causare conflitti. Disattiva i plugin uno per uno o passa a un altro tema per identificare se qualcuno di essi sta causando l’errore 406.

Disabilitazione dei plugin di WordPress

Una volta individuato il colpevole, puoi aggiornarlo o trovare una soluzione alternativa.

Controlla il database del tuo sito web

Un database corrotto potrebbe contenere dati non validi o mancanti, causando un errore 406. Mantenere il database ben mantenuto assicura che il sito web funzioni senza problemi e preservi l’integrità dei dati.

Se sei un utente WordPress, puoi sfruttare le funzionalità avanzate del plugin Speed Optimizer. Una di queste è la funzionalità manutenzione programmata del database, che controllerà periodicamente il tuo database e lo pulirà dai dati danneggiati o non necessari.

Opzioni di manutenzione del database in Speed Optimizer

Controllare i registri del server

I log degli errori del server sono uno strumento indispensabile per la risoluzione dei problemi e per trovare la fonte del problema. Forniscono informazioni dettagliate sugli errori specifici registrati sul tuo sito web con timestamp e i file che hanno interessato. Esamina i log per eventuali messaggi di errore o avvisi correlati all’errore 406.

Registri degli errori del server

Verificare la configurazione del server

Eventuali errori di configurazione del server possono impedire al sito web di soddisfare le richieste dei client, generando un errore 406.

Assicurati che le impostazioni di configurazione del tuo server siano corrette. Controlla le impostazioni di negoziazione del contenuto del server e i tipi MIME per verificare che siano allineati con varie richieste HTTP.

Conclusione

Incontrare un errore HTTP non è mai divertente, soprattutto quando non è uno di quelli comuni per i quali ci sono molte informazioni online. L’errore HTTP 406 Not Acceptable è uno di questi, e gestirlo può essere un po’ più impegnativo.

È importante ricordare che l’errore 406 evidenzia una negoziazione di contenuto non riuscita tra un client (browser) e un server web. Sebbene possa sembrare intimidatorio all’inizio, comprenderne le cause profonde può semplificare notevolmente la risoluzione dei problemi. Tra queste:

  • URL digitati in modo errato
  • Errori di configurazione del sito
  • Impostazioni server errate

Affrontando uno alla volta questi potenziali problemi, potrai risolvere rapidamente il problema e garantire un’esperienza di navigazione più fluida.

Condividi questo articolo