390 votos

La superación de la "Pantalla prohibido por X-Frame-Options"

Estoy escribiendo una pequeña página web, cuyo propósito es presentar a un par de otras páginas, simplemente para agruparlos en una sola ventana del navegador para facilitar la visualización. Algunas de las páginas que estoy tratando de marco prohibir de ser enmarcado y tirar "se Negó a mostrar el documento debido a que la pantalla prohibido por X-Frame-Options." error en Chrome. Entiendo que esto es una seguridad de limitación (por buenas razones), y no tienen acceso a cambiarlo.

¿Existe alguna alternativa al enmarcado o no encuadre método para mostrar páginas en una sola ventana que no se tropezó por la X-Frame-Options header?

195voto

Sean Puntos 1398

Yo tenía un problema similar, donde yo estaba tratando de mostrar el contenido de nuestro propio sitio web en un iframe (como un lightbox al estilo de diálogo con Colorbox), y donde hemos tenido un nivel de servidor "X-Frame-Options SAMEORIGIN" cabecera en el servidor de origen evitando que se carga en nuestro servidor de prueba.

Esto no parece ser documentado en ninguna parte, pero si usted puede editar las páginas que estás intentando iframe (p. ej., ellos son sus propias páginas), simplemente el envío de otro X-Frame-Options header con cualquier cadena de caracteres en todo deshabilita la SAMEORIGIN o DENEGAR los comandos.

por ejemplo. para PHP, poniendo

<?php
    header('X-Frame-Options: GOFORIT'); 
?>

en la parte superior de la página hará que los navegadores se combinan los dos, lo que resulta en un encabezado de

X-Frame-Options SAMEORIGIN, GOFORIT

...y permite cargar la página en un iframe. Esto parece funcionar cuando la inicial SAMEORIGIN comando se fijó en un nivel de servidor, y te gustaría reemplazar en una página-por-caso.

Todo lo mejor!

156voto

Wil Puntos 1507

Sí, eso es. Otra forma de hacerlo, es 1) Copiar el link, 2) Reemplazar el "reloj?v=" con "embed/" 3) Actualización de la cadena de caracteres y parámetros en consecuencia

Así, en YouTube, por ejemplo

http://www.youtube.com/watch?v=j6cxZp4ii6c 

se convierte en

http://www.youtube.com/embed/j6cxZp4ii6c?autoplay=true

Esto funciona como un enlace al vídeo a pantalla completa en el navegador. Sólo thest enlace 2 anterior.

123voto

Q Studio Puntos 1259

Si usted está recibiendo este error al intentar insertar un Mapa de Google en un iframe, usted necesita agregar &output=embed para el enlace de la fuente.

Fuente: http://www.rivercitystudio.com/blog/2011/09/google-maps-embedding-x-frame-options-change/

22voto

Kevin Vella Puntos 677

La adición de un

  target='_top'

a mi enlace en el facebook de la ficha se ha solucionado el problema para mí...

20voto

Eric Corriel Puntos 346

Si usted está recibiendo este error al intentar incrustar Vimeo contenido, cambiar el src del iframe,

de: https://vimeo.com/63534746
a: http://player.vimeo.com/video/63534746

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X