¿Qué estado de redireccionamiento HTTP debo usar para enlazar fuera del sitio?
-
06-07-2019 - |
Pregunta
Al navegar aleatoriamente por mi sitio web a través de Google, noté que aparecía redirecciones remotas como archivos locales. Ahora esto puede ser bueno o malo, pero me pregunto cómo puedo solucionarlo para que no suceda.
Actualmente estoy usando PHP y el encabezado ('Ubicación: ...
que envía un redireccionamiento 302. Mirando por encima de la lista de códigos de estado HTTP , supongo que debería estar usando 303 redirecciones para redireccionar fuera del sitio. ¿Alguien puede ayudarme aquí? , y confirme / niegue esto, o dígame qué debería hacer en su lugar?
Obviamente, debido a que no puedo decirle a Google que vuelva a indexar mi sitio al comando, hay problemas con la posibilidad de probar esto por mi cuenta ...
Solución
El código de estado 303 está destinado a ser utilizado en respuesta a una solicitud POST para redirigir a un recurso diferente:
Este método existe principalmente para permitir que la salida de un script activado por POST redirija el agente de usuario a un recurso seleccionado.
En su caso, debe utilizar el 301 código de estado para una redirección permanente:
Al recurso solicitado se le ha asignado un nuevo URI permanente y cualquier referencia futura a este recurso DEBERÍA usar uno de los URI devueltos.
O utiliza una redirección temporal ( 302 / 307 ) y no diga a los motores de búsqueda para indexar esos documentos.
Otros consejos
Note: Many pre-HTTP/1.1 user agents do not understand the 303
status. When interoperability with such clients is a concern, the
302 status code may be used instead, since most user agents react
to a 302 response as described here for 303.
No sé qué agentes de usuario pre-HTTP / 1.1 hay por ahí, así que ... Dependiendo de lo que estés buscando, usaría 301 (permanente) o 307 (temporal). 301 le indicará a Google que se comporte como si usted hubiera vinculado directamente al sitio redirigido.
303 parece que está diseñado para ser usado en la redirección después de enviar formularios, específicamente.
editar:
aunque su pregunta es " ¿Qué estado de redireccionamiento HTTP debo usar para enlazar fuera del sitio? " - ¿Qué hay de enlazar directamente fuera del sitio? (Supongo que no funciona si está utilizando un formulario para realizar el enlace, en cuyo caso utilizaría el código de estado 303)