fb-pixel
SupportHost italian

Come risolvere l’errore 406 Not Acceptable

A volte capita che al posto di una pagina del nostro sito il browser visualizzi un messaggio di errore quasi più frustrante del 404: l’errore 406 Not Acceptable. Infatti in questo caso il contenuto è disponibile, ma il server non lo trasmette al browser.

In questa guida vedremo quali possono essere le cause dell’errore 406 e tutti i modi per risolverlo in modo rapido, limitare i danni e prevenirlo.

Iniziamo subito.

Cos’è l’errore 406 Not Acceptable?

L’errore 406 indica un’incompatibilità reale o presunta tra la pagina web che si sta cercando di aprire e il software usato dall’utente per navigare, cioè il browser. 

Nella maggior parte dei casi il server non è in grado di dare al browser una risposta nel formato richiesto. Altre volte il server ha interpretato male la richiesta oppure questa è stata bloccata o modificata da un firewall; o ancora il server considera sospetto il comportamento del browser per via delle proprie impostazioni troppo restrittive. Il risultato è comunque un errore di negoziazione che si manifesta con il codice di stato HTTP 406.

Errore 406

La segnalazione di errore 406 è di solito accompagnata dal messaggio

“Not Acceptable

An appropriate representation of the requested resource could not be found on this server.”

Cioè il browser ci dice che “non è stato possibile trovare sul server una rappresentazione appropriata della risorsa richiesta”.

L’errore 406 corrisponde a un codice di stato HTTP, cioè una delle sequenze numeriche attraverso le quali avviene la comunicazione tra server e client (nel nostro caso un browser). Come forse avrai notato, i codici HTTP che iniziano con il “4” indicano sempre errori lato client: pensa ad esempio al celebre errore 404, ma anche all’errore 403, all’errore 401 o all’errore 410.

Ora che sappiamo cos’è l’errore 406 Not Acceptable, cerchiamo di capire perché si verifica.

Cause dell’errore HTTP 406 

Prima di addentrarci tra le cause dell’errore HTTP 406, ricordiamo come si svolge la comunicazione tra server e browser. Quando il visitatore cerca di accedere a una pagina, il browser chiede al server di restituire la pagina rispettando dei requisiti, specificati tramite i request header, cioè le intestazioni di richiesta HTTP. Tra queste ci sono:

  • Accept, che indica i formati gestiti dal browser, per esempio HTML, JSON o XML;
  • Accept-Language, che indica le lingue preferite dall’utente;
  • Accept-Encoding, che specifica i metodi di compressione supportati dal browser per l’invio della risposta compressa (gzip o br, ad esempio);
  • Accept-Charset, che comprende i caratteri accettati (UTF-8, ISO-8859-1, ecc.), e tabelle.

Queste tabelle definiscono la corrispondenza tra i codici numerici usati nei file HTML o CSS e i simboli e lettere che il browser deve visualizzare sulla pagina.

Un’altra intestazione citata a proposito di errori 406 è Accept-Ranges; eppure difficilmente questo header può causare 406, perché non ha a che fare con il formato della risposta, ma con gli intervalli di byte che il browser può ricevere nei download parziali di una risorsa.

Dopo la lettura delle intestazioni HTTP del browser, se non riesce a fornire una risposta in un formato gestito dal browser, il server risponde con il codice di stato 406 Not Acceptable e comunica che la risorsa esiste ma non può essere restituita secondo le modalità richieste. Di conseguenza il browser interrompe il caricamento della pagina e mostra un errore all’utente.

Nella maggior parte dei casi l’errore 406 compare quando il server non può fornire una risposta in nessun formato specificato nell’intestazione Accept della richiesta originale. Si parla quindi di violazione del MIME type (o tipo MIME), l’etichetta che identifica il formato di una risorsa, per esempio text/html per una pagina HTML, image/jpeg per un’immagine JPEG, application/json dati JSON, ecc.

Quando invece a non poter essere soddisfatte sono le specifiche di lingua e formato di compressione – di Accept-Language e Accept-Encoding –, di solito seguono adattamenti automatici (fallback) che permettono di visualizzare comunque la pagina.

In sintesi, tra le cause più frequenti di errore 406 ci sono:

  • incompatibilità tra i formati richiesti dal browser e forniti dal server, che causa errori di negoziazione dei contenuti;
  • header di richiesta errati che richiedono formati che il server non è in grado di trasmettere;
  • URL che contengono elementi fuorvianti per il server e lo portano a interpretare male la richiesta, come vedremo tra poco;
  • plugin o temi scritti male o non aggiornati che causano risposte errate del server verso il browser;
  • database danneggiato che provoca l’invio di dati incompleti o errati al browser;
  • configurazione del server troppo restrittiva.

Come risolvere l’errore 406

Quando su un sito compare un errore 406, i modi per eliminarlo possono essere diversi e bisogna procedere per tentativi. Dobbiamo escludere le possibili cause finché riusciamo a individuarne una e possiamo risolverla o chiedere aiuto. 

Le azioni consigliate per risolvere l’errore 406 Not Acceptable sono:

  • controllare l’URL
  • aggiornare il CMS
  • disattivare i plugin WordPress
  • disattivare il tema
  • ripristinare le modifiche recenti a temi e plugin
  • riparare e ottimizzare il database
  • analizzare i log del server
  • disattivare ModSecurity
  • attivare la modalità di debug.

Vediamole una per una.

Controllare l’URL

In alcuni casi gli errori 406 sono generati da risorse non trovate e in sostanza mascherano errori 404. Questo può accadere, per esempio, se l’URL contiene termini come .json, .xml, .php, format=json, che inducono il server a ritenere che sia richiesto quel formato specifico anche se non è realmente necessario.

Per esempio potrebbe succedere con un indirizzo come questo:

https://www.esempio.com/view.php?product=123

Controllare l’URL serve a verificare che l’errore 406 non sia stato causato da un fraintendimento di questo tipo.

Per prevenire l’errore 406, lato URL è consigliabile non usare estensioni o parametri ambigui se non servono davvero. Lato server bisognerebbe prevedere alternative d’emergenza (fallback), cioè fare in modo che in caso di formato non disponibile il server possa rispondere con quello predefinito (di solito l’HTML). 

Aggiornare il CMS

Quando gli errori 406 sono apparsi in seguito all’aggiornamento di temi o plugin, a volte passare all’ultima versione del CMS è sufficiente per risolverli.

Le versioni recenti di WordPress per impostazione predefinita richiedono l’autorizzazione dell’utente per installare gli aggiornamenti più importanti (major release) e offrono la possibilità di automatizzarli.

Può quindi capitare che il tuo sito non stia ancora usando l’ultima versione di WordPress, ma puoi installarla con un clic in qualsiasi momento.

Basta entrare in Bacheca > Aggiornamenti e usare il pulsante Aggiorna alla versione.

Aggiorna WordPress Ultima Versione

Se l’hai già installata, puoi reinstallarla.

Reinstalla WordPress Ultima Versione

Tornare alla versione precedente del CMS

Se gli errori 406 sono comparsi in seguito all’installazione dell’ultima versione del tuo CMS, puoi cercare di risolvere il problema tornando alla versione precedente.

Se il tuo sito è su WordPress, per il ripristino – chiamato anche rollback o downgrade – hai 2 opzioni

  • scaricare e installare i file della versione che ti serve;
  • usare un backup del tuo sito che la contiene.

Se hai scelto la prima modalità, entra nell’archivio Release di WordPress e scarica i file necessari. 

Per installarli ti serve l’accesso al pannello di controllo del server, che con SupportHost è disponibile su tutti gli account.

Accedi alle cartelle del sito dal gestore dei file o via client FTP e cancella wp-admin e wp-includes

File Manager Public Html Wp Admin Wp Includes

Fai molta attenzione a non sovrascrivere la cartella wp-content per non perdere temi, plugin, caricamenti multimediali, ecc.

Carica tutti i file della versione di WordPress che vuoi installare tranne la cartella wp-content e poi accetta di sovrascrivere i file.

In alternativa puoi installare sul sito il plugin Core Rollback, con cui puoi tornare alla versione precedente del CMS senza uscire dal pannello di amministrazione.

Core Rollback Installazione

Se usi altri CMS, per esempio Joomla o Prestashop, solitamente trovi i file delle versioni precedenti sui loro siti e puoi sovrascriverli via FTP o gestore dei file. 

Disattivare i plugin WordPress 

Su WordPress può capitare che l’installazione o l’aggiornamento di un plugin produca errori. Per questo, quando compaiono errori 406 di cui non riconosci l’origine, una delle prime cose da fare è disattivare i plugin per verificare se il problema dipende da loro.

Ovviamente anche in questo caso la cosa migliore è farlo sul sito di staging per non ottenere effetti indesiderati in produzione o disturbare i visitatori.

Ci sono due modi di procedere.

Il primo è disattivare i plugin uno a uno finché gli errori 406 scompaiono, usando l’apposita funzione disponibile nella sezione Plugin dell’area di amministrazione di WordPress.

Disattiva Singolo Plugin WordPress

Quando hai trovato il responsabile, puoi riattivare tutti gli altri plugin disattivati sino a quel momento.

Un secondo metodo consiste nel disattivare tutti i plugin in contemporanea usando il menù Azioni di gruppo, e poi riattivarli uno alla volta sino a trovare quello che sta causando gli errori 406. 

Disattivare Plugin WordPress In Blocco

Se non hai accesso alla dashboard, puoi seguire la nostra guida per disattivare i plugin e usare il gestore dei file nel pannello di controllo del server, se il tuo hosting WordPress lo fornisce.

Se scopri che a causare l’errore è stato un plugin, tornare alla sua versione precedente può essere una soluzione rapida ma temporanea, di cui parleremo a breve. 

Disattivare il tema

Se usi WordPress e hai verificato che a causare l’errore 406 non era stato un plugin, puoi continuare la tua indagine concentrandoti sul tema. A differenza dei plugin, il tema non può essere disattivato direttamente ma va sostituito con un altro, e l’ideale è passare a un tema predefinito di WordPress, cioè uno dei temi ‘Twenty Twenty’ che vengono installati in automatico insieme al CMS.

Probabilmente infatti ne troverai uno nel pannello di amministrazione, in Aspetto > Temi.

Installare Tema Predefinito WordPress

Se non dovesse esserci, puoi installarlo usando la funzione Aggiungi tema.

Installare Twenty Twenty Four

Fai clic su Attiva e il tema precedente verrà disattivato in automatico.

Attivare Twenty Twenty Five WordPress

Ripristinare le modifiche recenti a temi e plugin WordPress 

Come dicevamo, gli errori 406 Not Acceptable possono essere legati all’aggiornamento del tema o di singoli plugin WordPress.

In questo caso puoi risolverli tornando alla versione precedente del componente che hai aggiornato, in due modi

  • caricare un file di backup nelle cartelle del sito, via gestore dei file;
  • usare un plugin che reinstalla le versioni precedenti di temi e plugin. 

Si tratta di soluzioni rapide ma temporanee, perché avere sul sito software non aggiornato non è l’ideale per la sicurezza. Dopo aver risolto gli errori 406, dovrai quindi valutare se il plugin sia realmente indispensabile, ed eventualmente trovare un’alternativa che non crei problemi. 

Se è il tema a causare errori, la situazione è più difficile perché cambiare tema significa rimettere mano al layout del sito.

Caricare un file di backup via gestore file

Per fortuna possiamo tornare a una versione precedente di un tema o di un plugin intervenendo solo sulla sua cartella e lasciando inalterato il resto del sito. Per farlo però ti serve un file di backup creato prima che si verificasse l’errore 406, altrimenti dovrai usare un altro metodo. 

Se il tuo hosting è SupportHost non avrai problemi perché potrai usare uno dei 30 backup giornalieri del tuo sito che mettiamo a disposizione su cPanel.

Per trovarli accedi al pannello, scorri la pagina fino alla sezione JETBACKUP e clicca su File Backups

Jetbackup File Backups

Qui ci sono tutti i backup, ordinabili per data. Fai clic sul pulsante FILE MANAGER per vedere i singoli file.

Jetbackup Lista File Backup

Come abbiamo visto nella guida dedicata, dal file manager è possibile sia scaricare i file sul pc che ripristinarli direttamente. Prima di qualsiasi ripristino però, assicurati che il backup sia funzionante provandolo sul sito di staging o un altro ambiente di test.

File Backups Scelta File

Sia che usi JetBackup che un altro sistema, dopo averli scaricati puoi ripristinare i file di backup facilmente seguendo la nostra guida dedicata. In sintesi si tratta di sovrascrivere la cartella di backup del tema o plugin a quella che vedi nel tuo file manager.

Se il tuo sito è su WordPress, troverai i file dei plugin in wp-content > plugins, dentro cartelle specifiche per ciascun componente aggiuntivo. Il nome delle cartelle segue lo schema /wp-content/plugins/nome-plugin/, quindi ti sarà facile trovare quella del plugin che vuoi riportare alla versione precedente.

La cartella del tema si trova invece in wp-content > themes e si chiama /wp-content/themes/nome-tema/.

Usare un plugin WordPress per il ripristino 

Né WordPress né gli altri CMS contengono una funzione nativa che permetta agli utenti di tornare alle versioni precedenti di temi e plugin dalla dashboard.

Però su WordPress, se non vuoi ripristinare le versioni precedenti di temi o plugin manualmente oppure non hai accesso al file manager, puoi sempre ricorrere a un plugin come WP Rollback.

WP Rollback è un programma gratuito che si installa nel solito modo dalla directory di WordPress. Puoi cercarlo, cliccare su Installa e poi su Attiva. 

Wp Rollback Installazione

Dopo l’installazione del plugin vai nella schermata Plugin di WordPress, dove sarà apparso un nuovo comando per il ripristino.

Fai clic su Rollback accanto al plugin sospettato di causare l’errore 406.

Wp Rollback Ripristino Plugin

Qui devi solo scegliere la versione precedente a cui vuoi tornare e dare conferma.

Wp Rollback Ripristino Plugin Versioni

Riparare e ottimizzare il database 

Nel tempo il database di WordPress può corrompersi a causa di configurazione errata o troppo carico sul server, o a causa di plugin che eseguono le query in modo inefficiente.

Di solito i problemi al database non sono la causa diretta di errori 406, ma potrebbero provocarli indirettamente rendendo la risposta del server inaccettabile per il client.

Per escludere che il problema sia causato dal database puoi fare diverse cose:

  • riparare le tabelle da phpMyAdmin
  • eliminare errori lasciati da un plugin difettoso
  • ottimizzare il database con un plugin.

Prima di iniziare assicurati di avere i backup di WordPress necessari per un eventuale ripristino. Tieni conto che diversi plugin per la migrazione, come UpdraftPlus o Duplicator, ti danno anche la possibilità di creare file di backup del sito.

La funzione per riparare le tabelle in automatico di solito è disponibile nel pannello dell’hosting. Per usarla fai il login su cPanel o un altro pannello di controllo ed entra in phpMyAdmin.

Riparare Database Phpmyadmin

Apri il database del tuo sito, seleziona tutte le tabelle e nel menù scegli l’opzione Ripara tabella.

Ripara Tabella Database Phpmyadmin

Sempre in phpMyAdmin, se un plugin ha creato problemi sul sito, puoi andare a cercare eventuali errori rimasti nel database nonostante la rimozione del software. Usa la barra di ricerca per trovare le tabelle generate dal plugin, il cui nome inizierà con wp_nomeplugin_, e cancellale dal database.

Per esempio nell’immagine, ho cercato tutte le tabelle relative a Rank Math.

Phpmyadmin Tabelle Plugin

Quando, dopo aver escluso le cause più comuni, non si è ancora trovata la causa degli errori, 406 o di altro tipo, chi ha esperienza con il database di WordPress può fare dei controlli manuali delle righe per individuare valori non conformi e danneggiati, duplicazioni, celle orfane, ecc. 

Un altro modo per escludere che gli errori 406 siano causati dal database o per risolverli è configurare un plugin per ottimizzare le tabelle come WP Optimize o Advanced Database Cleaner.

Come abbiamo spiegato nella guida per velocizzare WordPress, ottimizzare il database è utile a prescindere dagli errori 406, e puoi farlo anche manualmente, seguendo le nostre istruzioni passo passo.

Analizzare i log del server

Gli errori 406 potrebbero essere legati a problemi lato server. Per individuarli possiamo controllare i log, file che registrano in dettaglio le richieste, le risposte e gli errori che si generano a livello di hosting. 

Questa soluzione è applicabile anche da chi non usa un CMS, ma solo se ha accesso al pannello di controllo dell’hosting. 

Su cPanel puoi esaminare i due registri Errors e Raw Access.

Il log Errors si trova nella sezione Metrics. 

Cpanel Metrics Errors

Puoi raggiungerla scorrendo la pagina o con la barra di ricerca.

Cpanel Accedere Log Errori Server

Errors contiene un elenco degli errori lato server più recenti in forma leggibile e può dare molti indizi sulla causa degli errori 406.

Cpanel Schermata Errors

Anche il registro Raw Access si trova in Metrics.

Cpanel Log Raw Access Errori Server

I log degli accessi ‘grezzi’ del server web registrano ogni richiesta HTTP arrivata al server: URL, metodo, codice di risposta, user agent, IP. Per poter essere analizzati devono essere scaricati dalla schermata Raw Access.

Cpanel Raw Access Registro

In caso di errore 406 vedrai qualche riga che contiene il numero 406, come nell’esempio:

192.0.2.15 - - [24/Jan/2026:13:05:42 +0100] "GET /api/prova HTTP/1.1" 406 532 "-" "Mozilla/5.0"

Se non sai come interpretare questi registri o come risolvere gli errori puoi contattare il tuo fornitore di hosting.

Disattivare temporaneamente ModSecurity

A volte gli errori 406 possono essere causati da un firewall a livello di server che blocca anche richieste valide. In questo caso nel registro degli errori potresti vedere dei riferimenti a ModSecurity. Per assicurarti che sia questa la causa puoi disattivarlo per il tempo necessario a fare la verifica.

In cPanel trovi le impostazioni in Security > ModSecurity.

Cpanel Security Modsecurity

Qui per disattivare il firewall per il tuo dominio ti basta selezionare Off nella schermata di configurazione.

Disattiva Modsecurity Settings Firewall Lato Server

Lo stesso puoi fare se il tuo hosting usa Cloudflare.

Se scopri che l’errore 406 dipende dal server devi contattare l’assistenza tecnica del tuo hosting e verificare se è possibile modificare la configurazione per risolvere il problema.

Attivare la modalità di debug

La maggior parte dei CMS offre il debug, una modalità che permette di risalire alle cause dei malfunzionamenti, purché si abbiano le competenze per interpretare i registri degli errori.

Su WordPress è possibile attivare la modalità di debug attraverso plugin come Query Monitor o Debug Bar e leggere il log degli errori dall’interfaccia di WordPress. In alternativa possiamo sempre usare il gestore dei file.

Nel tuo pannello dell’hosting puoi entrare in File Manager e nella cartella principale del sito, che di solito coincide con public_html. Qui trovi il file wp-config.php.

Public Html Wp Config

Clicca col tasto destro sul file per aprire il menù e scegli Edit

Wp Config Edit

Per attivare la modalità di debug nell’editor del file devi aggiungere la stringa:

define('WP_DEBUG', true);

Va inserita sopra la riga /* That’s all, stop editing! Happy publishing. */, come in questa immagine:

Edit Wp Config Php

Questa stringa basta per attivare il debug, ma per maggior sicurezza è meglio aggiungerne altre due:

define('WP_DEBUG_LOG', true);

define('WP_DEBUG_DISPLAY', false);

La prima riga permette di salvare tutti gli errori, gli avvisi e le notifiche PHP in un file di registro, mentre la seconda impedisce che gli errori vengano mostrati sulle pagine del sito. 

Il codice andrà posizionato così:

Edit Wp Config Php File Log

Di norma il file viene creato o aggiornato nella cartella /wp-content/ con il nome debug.log

Debug Log Wp Admin

Il file si apre con un normale editor di testo. Se nomina plugin o temi, è un indizio che puoi usare per cercare informazioni sull’errore in rete o anche per fornire dettagli al supporto clienti dell’hosting.

Quando hai terminato il controllo, riporta WP_DEBUG a “false” e cancella il file di registro dal gestore dei file.

Come prevenire l’errore 406

Ecco alcuni accorgimenti che possono aiutarti a prevenire l’errore 406 e codici di stato simili:

  • ridurre i plugin a quelli strettamente necessari;
  • assicurarti che i temi e i componenti aggiuntivi siano affidabili prima di installarli;
  • non modificare i file di base di WordPress o altri CMS a meno di non sapere molto bene quello che stai facendo;
  • eseguire l’ottimizzazione del database in modo regolare, idealmente una volta al mese;
  • testa sempre gli aggiornamenti importanti su staging o altro ambiente di prova prima di applicarli sul sito pubblico.

Per ridurre l’impatto negativo di errori 406 o di altro tipo, la prima cosa che dovresti fare è assicurarti di avere un sistema di backup efficiente che permetta di risolverli in modo facile e veloce tornando a una versione del sito precedente (e funzionante). Con SupportHost per esempio, hai un servizio di backup superaffidabile compreso nel prezzo dell’hosting.

In ogni caso, anche se stai usando un servizio di backup automatico, crea anche manualmente una copia del sito prima di installare nuove estensioni: è più sicuro.

Conclusioni

In questa guida sull’errore 406 Not Acceptable abbiamo visto che corrisponde a un codice HTTP che indica un’incompatibilità tra server e browser.

I modi per identificarlo e risolverlo dipendono dalla causa specifica, che non è nota a priori ma va individuata andando per esclusione. Per risalire alle cause dell’errore 406 possiamo fare una serie di azioni che vanno dalla disattivazione del tema e dei plugin, al ripristino di versioni precedenti di tema, plugin e core, alla riparazione del database. Abbiamo a disposizione anche la possibilità di controllare il database e i registri degli errori del server o attivare la modalità di debug. 

Perché errori come questo possano essere risolti in modo rapido e indolore assicurati di avere un sistema di backup efficiente. Per prevenirli testa le modifiche al sito prima di applicarle in produzione. 

Ti è mai capitato di dover risolvere l’errore 406? È stato facile? Se ti va, raccontacelo nei commenti.

Categorie
Indice dei contenuti

    🚀

    Articoli correlati

    Commenti

    Lascia un commento

    Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *