Tengo un sitio web multi-locales. Necesito redirigir a los usuarios a su configuración regional cuando acceden al sitio sin el código de configuración regional en la url.RESTO: ¿Es el código http 300 apropiado en esta situación de redirección?
p. Ej.
http://www.mysite.com redirigido a cualquiera http://www.mysite.com/uk o http://www.mysite.com/us
estoy mirando rfc2616 y estoy dudando en utilizar Código 300 (opciones múltiples):
El recurso solicitado corresponde a uno cualquiera de un conjunto de representaciones , cada una con su propia ubicación específica, y agente- información de negociación accionada (sección 12) se proporciona para que el usuario (o agente de usuario) pueda seleccionar un representante preferido ion y redireccionan su solicitud a esa ubicación.
A menos que fuera una petición HEAD, la respuesta debe incluir una entidad que contiene una lista de características de los recursos y la ubicación (s) a partir de que el agente de usuario o el usuario puede elegir la más apropiada. El formato de entidad se especifica mediante el tipo de medio proporcionado en el campo de encabezado Content-Type.
Según el formato y las capacidades del agente de usuario, la selección de la opción más adecuada PUEDE realizarse automáticamente. Sin embargo, esta especificación no define ningún estándar para dicha selección automática.
Si el servidor tiene una opción preferida de representación, DEBERÍA incluir el URI específico para esa representación en el campo Ubicación ;
Creo que entiendo, pero la redacción todavía lo hace un poco críptico para mí. ¿Puede alguien familiarizado con los códigos de respuesta confirmar si estoy en el camino correcto y explicar los siguientes extractos?
Really accept-lang es la resolución más débil posible. ¿Qué haces con "en" aquí? Pero tiene razón en que el OP debe tener cuidado sobre cómo espera que el agente maneje un 300. – annakata
Supongo que la única opción es realmente solo 303, ya que no habrá redirección automática en Chrome (al menos la versión 19.0.1084.52 m) cuando el estado es 300. –