Se eu criar um iframe
assim:
var dialog = $('<div id="' + dialogId + '" align="center"><iframe id="' + frameId + '" src="' + url + '" width="100%" frameborder="0" height="'+frameHeightForIe8+'" data-ssotoken="' + token + '"></iframe></div>').dialog({
Como posso corrigir o erro:
Recusou-se a exibir
'https://www.google.com.ua/?gws_rd=ssl'
em um quadro porque definiu 'X-Frame-Options' como 'SAMEORIGIN'.
com JavaScript?
fonte
X-Frame-Options
é um cabeçalho incluído na resposta à solicitação para declarar se o domínio solicitado permitirá que seja exibido dentro de um quadro. Não tem nada a ver com javascript ou HTML e não pode ser alterado pelo originador da solicitação.Este site definiu esse cabeçalho para não permitir que ele seja exibido em um arquivo
iframe
. Não há nada que um cliente possa fazer para interromper esse comportamento.Leitura adicional sobre X-Frame-Options
fonte
Caso você esteja no controle do servidor que envia o conteúdo do iframe, é possível definir a configuração
X-Frame-Options
no seu servidor da web.Configurando o Apache
Para enviar o cabeçalho X-Frame-Options para todas as páginas, adicione-o à configuração do seu site:
Configurando o nginx
Para configurar o nginx para enviar o cabeçalho X-Frame-Options, adicione-o à sua configuração de http, servidor ou local:
Nenhuma configuração
Esta opção de cabeçalho é opcional, portanto, se a opção não estiver definida, você poderá configurá-la para a próxima instância (por exemplo, o navegador de visitantes ou um proxy)
fonte: https://developer.mozilla.org/en-US/docs/Web/HTTP/X-Frame-Options
fonte
add_header Strict-Transport-Security "max-age=86400; includeSubdomains"; add_header X-Frame-Options DENY;
dos nginx-snippets, e então funcionou imediatamente.Como a solução não foi realmente mencionada no lado do servidor:
É preciso definir coisas como esta (exemplo do apache), essa não é a melhor opção, pois permite tudo, mas depois de ver o servidor funcionando corretamente, você pode alterar facilmente as configurações.
fonte
realmente não ... eu costumava
fonte
e se nada ajudar e você ainda quiser apresentar esse site em um iframe, considere usar o X Frame Bypass Component que utilizará um proxy.
fonte
O cabeçalho de resposta HTTP X-Frame-Options pode ser usado para indicar se um navegador deve ou não ter permissão para renderizar uma página em um
<frame>
,<iframe>
ou<object>
. Os sites podem usar isso para evitar ataques de clickjacking, garantindo que seu conteúdo não seja incorporado a outros sites.Para obter mais informações: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options
Eu tenho uma solução alternativa para esse problema, que vou demonstrar usando o PHP:
iframe.php:
target_url.php:
fonte
Para esse fim, você precisa corresponder ao local em seu apache ou qualquer outro serviço que esteja usando
Se você estiver usando o apache, no arquivo httpd.conf.
fonte
A solução é instalar um plug-in do navegador.
Um site que emita o cabeçalho HTTP
X-Frame-Options
com um valor deDENY
(ouSAMEORIGIN
com uma origem de servidor diferente) não pode ser integrado a um IFRAME ... a menos que você altere esse comportamento instalando um plug-in do navegador que ignora oX-Frame-Options
cabeçalho (por exemplo , Ignorar cabeçalhos X-Frame do Chrome )Observe que isso não é recomendado por razões de segurança.
fonte
você pode definir a opção x-frame na configuração da web do site que deseja carregar no iframe assim
fonte
Você não pode realmente adicionar o x-iframe ao seu corpo HTML, pois ele deve ser fornecido pelo proprietário do site e está dentro das regras do servidor.
O que você provavelmente pode fazer é criar um arquivo PHP que carrega o conteúdo da URL de destino e, se for o nome da URL, deve funcionar sem problemas.
fonte
você pode fazê-lo no arquivo de configuração no nível da instância do tomcat (web.xml) e adicionar o 'filtro' e o mapeamento do filtro 'no arquivo de configuração web.xml. isso adicionará [X-frame-options = DENY] em toda a página, pois é uma configuração global.
fonte
Se você estiver seguindo a abordagem xml, o código abaixo funcionará.
fonte