html - redirection - Meta-refresh no funciona?
meta refresh url (7)
Tengo una página usando algo similar a
<meta http-equiv="refresh" content="0;url=http://example.com/" />
pero para ciertos usuarios en una determinada estación de trabajo esto no funciona. El está en IE. ¿Hay algo mal con las cookies o una configuración en algún lugar que haría que esto falle? Nunca escuche tal cosa.
¿Es una versión realmente vieja de IE? si es así, intente:
<meta http-equiv="refresh" content="0;url=http://example.com/"> </meta>
Necesita un espacio en blanco El editor HTML se quejará, pero simplemente ignórelo.
El problema es que cuando IE ve esto:
<meta http-equiv="refresh" content="0;http://www.example.com" />
espera que el atributo de contenido contenga un número. La única vez que IE comprobará si hay una URL es si el atributo de contenido contiene "URL =", por lo que la redirección que más se puede usar en todos los navegadores es esta:
<meta http-equiv="refresh" content="0;URL=http://www.example.com" />
El ejemplo anterior redirigiría de forma inmediata, pero si cambiaras el 0 por otro número, esperaría tantos segundos. Espero que todo esto tenga sentido, debería funcionar bien, pero todavía creo que mi primera idea fue la mejor.
En caso de que alguien intente usar la actualización de metadatos para redireccionar a una nueva URL en las aplicaciones de Facebook (ya sea la aplicación Pestaña de página o la aplicación IFRAME), Facebook desactiva la etiqueta de alguna manera.
La solución es:
<script>
top.window.location = ''http://example.com'';
</script>
Recuerda apuntar a "arriba", ya que las aplicaciones de Facebook están en IFRAME.
Hay una configuración de seguridad en Internet Explorer que no permite la actualización de metaetiquetas. Está en la pestaña Seguridad, luego elija Nivel personalizado y Meta Tag Refresh en Varios. Si eso está deshabilitado, detendría la actualización de meta.
Además de poder desactivarlo de forma selectiva, se desactiva automáticamente si configura el nivel de seguridad de IE en ''Alto'' [observado en IE9].
La etiqueta META no es una etiqueta vacía y no tiene una etiqueta de cierre en HTML, solo en XHTML. (Si realmente está enviando XHTML, puede que no funcione correctamente en las versiones anteriores de IE de todos modos, solo hay soluciones para enviar XHTML a las versiones anteriores de IE).
Tratar:
<meta http-equiv="refresh" content="0;url=http://example.com/">
Descripción de la etiqueta W3 Schools META
También puedes probar:
- Comprobando las versiones principales y secundarias de IE. Puede hacer esto en la ayuda-> sobre la opción de menú.
- IE históricamente se ha confundido por nombres de archivo y MIMEtypes. Asegúrese de que está enviando su HTML como un archivo de extensión htm o html, y que esos tipos de archivos están configurados en su servidor para enviar texto / html tipo MIME.
- Asegúrese de que su servidor no esté enviando un encabezado http de actualización meta en conflicto.
Mira esta solución. Maneja tanto javascript como meta-refresh al mismo tiempo: Meta-refresh y javascript
Solo una suposición descabellada: tal vez haya algunos adblockers instalados en esas máquinas donde la redirección no funciona. No se puede pensar en ninguna otra razón por la cual esta técnica común funciona en algunas máquinas mientras que otras fallan en otras.