Cosa significa
La risorsa ha più rappresentazioni (lingua, formato) e il client o l'utente deve sceglierne una. Il server può suggerire quella preferita tramite Location.
Cause comuni
- La negoziazione dei contenuti non è riuscita a scegliere tra le varianti
- Un server elenca formati o lingue alternativi
Come risolvere
Lato client o visitatore
Segui Location se presente, altrimenti scegli tra i link elencati. I browser non scelgono da soli.
Lato gestore del sito o dell’API
Preferisci la negoziazione guidata dal server (Accept, Accept-Language) e restituisci 200 con la corrispondenza migliore; il 300 raramente offre l'esperienza migliore.
Risposta di esempio
HTTP/1.1 300 Multiple Choices
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Link: </doc.en.html>; rel=alternate; hreflang=en
Link: </doc.de.html>; rel=alternate; hreflang=de
Content-Length: 0 Specifica
Domande frequenti
› I browser seguono un 300 automaticamente?
Alcuni seguono l'header Location se presente; altrimenti l'utente vede il corpo della pagina con le scelte.
› Il 300 va bene per i siti multilingue?
Di solito no. Reindirizza con 302 o servi la lingua giusta con link hreflang.