2012-08-29 68 views
7

estoy usando http://www.jacklmoore.com/colorbox para mostrar el contenido de una url en un lightbox. después de la implementación, el colorbox no mostró nada.X-Frame-Options SAMEORIGIN bloqueando iframe en mi dominio

Más tarde, me di cuenta el siguiente error en los registros de cromo:

Refused to display document because display forbidden by X-Frame-Options. 

así que después de documentar he añadido la siguiente línea al .htaccess raíz del sitio web:

Header always append X-Frame-Options SAMEORIGIN 

para permitir la incrustación iframe en mi propio dominio.

Pero sigo teniendo el error, soy novato de x-frame, y estoy trabajando en una aplicación existente, por lo que pensé que la solución .htaccess sería agradable, pero ¿puede ser anulada por algún código? Tenga en cuenta que no está en la configuración del servidor.

Respuesta

13

intente enviar otra cabecera X-Frame-Options, añadir

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

a la parte superior de la página. Debe deshabilitar el comando SAMEORIGIN.

+0

lo probé sin éxito, luego me di por vencido e hice mi popin en línea>. SupFrig

+1

Después de probar un montón de otras "correcciones" para hacer que Wordpress se renderice en un iFrame, ¡FINALMENTE fue el que hizo que funcionara para mí! – Evildonald

+0

Hola, intento esto, pero no tengo éxito, ¿puede decirme dónde necesito poner esto en mi sitio de WordPress? Gracias –

4

De acuerdo con las páginas de moz dev. Aquí está la definición de la SAMEORIGIN


La página sólo se pueden mostrar en un marco en el mismo origen que la página sí.

Significa que solo si incluye alguna página de su sitio se mostraría.
Vamos a suponer

  1. usted tiene un sitio web en http://foo.com y desea algo que mostrar en marco flotante de la http://foo.com/sec_page se mostraría en el marco flotante
  2. pero si incrusta el mismo marco flotante (http://foo.com/sec_page) para cargar en http://bar.com entonces no mostraría nada. Como el origen sería cambiado.

Puede leer el full note here

1

puede quitar el encabezado de la respuesta que se obtiene:

header_remove ("X-Frame-Options");

0

Establezca las opciones de XFrame en DENY o Sameorigin. De lo contrario, puede ayudar a crear ataques de phishing o inyecciones de Frame si su sitio es vulnerable al ataque XSS.

0

He añadido esto en httpd.conf:

Header unset X-Frame-Options 

y funciona.

Cuestiones relacionadas