Qué significa
El recurso tiene varias representaciones (idioma, formato) y el cliente o el usuario debe elegir una. El servidor puede sugerir la preferida con Location.
Causas habituales
- La negociación de contenido no pudo elegir entre variantes
- Un servidor lista formatos o idiomas alternativos
Cómo solucionarlo
Si eres el cliente o visitante
Sigue Location si existe, o elige entre los enlaces listados. Los navegadores no eligen solos.
Si administras el sitio o la API
Prefiere la negociación dirigida por el servidor (Accept, Accept-Language) y devuelve 200 con la mejor opción; 300 rara vez da la mejor experiencia.
Respuesta de ejemplo
HTTP/1.1
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 Especificación
Preguntas frecuentes
› ¿Los navegadores siguen un 300 automáticamente?
Algunos siguen la cabecera Location si existe; si no, el usuario ve el cuerpo de la página con las opciones.
› ¿300 es bueno para sitios multilingües?
Normalmente no. Redirige con 302 o sirve el idioma correcto con enlaces hreflang.