Tengo una aplicación web cgi existente que solía funcionar bien, pero cuyo comportamiento ha cambiado.
Uno de los programas cgi (bajo ciertas condiciones) devuelve un encabezado de ubicación para provocar un redireccionamiento.
El encabezado de la ubicación nunca llega al navegador web; en cambio, parece que Apache devuelve el contenido de la página a la que se redirige el encabezado de la ubicación.
Desafortunadamente, esa página contiene javascript que usa la cadena de consulta dentro del encabezado de la ubicación, pero con este nuevo comportamiento, la cadena de consulta está vacía, porque el navegador aún cree que la ubicación es el script cgi original.
¿Por qué ha cambiado su comportamiento y qué puedo hacer para evitar que suceda?
fuente
Location
encabezamiento.Respuestas:
De acuerdo a esta respuesta , CGI especifica dos tipos diferentes de redirecciones: internas y externas.
Redirecciones internas (invisible para el navegador) se usa cuando se especifica una URL sin esquema y host (como
otherpage.html
o/index.html
) en elLocation
encabezamiento.Redirecciones externas (realizado por el navegador) se utilizan solo cuando se especifica una URL absoluta (es decir,
http://www.example.com/some/other/page
). URLs absolutas debe comenzar con el esquema (es decir,http
).RFC 3875 Contiene la documentación relevante:
fuente