L'errore 406 Not Acceptable è un errore che non si incontra di frequente. Si presenta quando il browser web effettua una specifica richiesta di risorsa al server che però non è in grado di fornire una risposta valida, ma è anche legato ad una cattiva interpretazione o codifica del codice ed indica che il browser ha rilevato un’anomalia nella pagina che sta provando ad aprire.
I browser Web, quando tentano di collegarsi ad un sito, inviano una richiesta di informazioni al server attraverso un'intestazione Accept che comunica al server in quali formati il browser può accettare i dati. Tale richiesta, ad esempio, specifica un set di caratteri accettabile (tramite Accept-Charset), lingua (tramite Accept-Language), tipo MIME, codifica.
Se il server non è in grado di soddisfare le richieste del browser inviando i dati nel formato richiesto nell'intestazione Accept, allora risponde con l'errore 406 Not Acceptable.
Ciò può capitare, ad esempio, quando il client richiede una specifica lingua tramite Accept-Charset, ma il server non è in grado di fornire una risposta appropriata.
Nella maggior parte dei casi, quando si presenta un errore 406 anomalo, basterà assicurarsi che nel markup HTML sia dichiarato il corretto doctype e che lo stesso sia compatibile con la maggior parte dei browser utilizzati.
I browser web si comportano in modo differente di fronte all'errore 406, Chrome e Internet Explorer tendono ad esser permissivi, non visualizzano notifiche anche quando ci sono errori, a differenza di Firefox che è più rigido.