главная страница Google не будет загружаться в iframe - PullRequest
11 голосов
/ 15 декабря 2011

Действительно не могу понять, почему Yahoo iframe работает, а Google - нет:

<!DOCTYPE html><html><body>
<iframe frameborder="0" src="http://www.yahoo.com"></iframe>
<iframe frameborder="0" src="http://www.google.com"></iframe>
</body></html>

есть идеи?

Ответы [ 3 ]

26 голосов
/ 25 апреля 2012

С http://msdn.microsoft.com/en-us/library/cc288472(v=vs.85).aspx#search

Защита с помощью Clickjacking: Некоторые хакеры пытаются обмануть пользователей, нажимая кнопки, которые, по-видимому, выполняют безопасные или безвредные функции, но вместо этого выполняют несвязанные задачи. Clickjackers встраивают вредоносный код или «исправляют» пользовательский интерфейс, используя прозрачные фреймы, которые перекрывают определенные элементы пользовательского интерфейса с вводящим в заблуждение текстом и изображениями. Чтобы предотвратить перехват кликов, владельцы веб-сайтов могут отправлять заголовок ответа HTTP с именем X-Frame-Options с HTML-страницами, чтобы ограничить способ создания страницы.

X-Frame-Options: Deny

Если значение X-Frame-Options содержит токен Deny, Internet Explorer 8 предотвращает рендеринг страницы, если она содержится в кадре. Если значение содержит токен SameOrigin, Internet Explorer не будет отображать страницу, если контекст верхнего уровня просмотра отличается от источника страницы, содержащей директиву. Заблокированные страницы заменяются страницей с ошибкой «Это содержимое не может быть отображено в рамке».

1 голос
/ 31 марта 2015

У меня тоже такая же ошибка.Я просто включил внутрь тега, и он работает для меня нормально.Я проверил это в Chrome, Firefox и Opera

<div style="height:820px; width:100%" >
 <div  style="background-color:Green; height:50px; width:100%"> </div>
 <iframe id="content"   style="height:820px; width:100%; overflow:auto;" src="http://www.google.com" ></iframe>
 </div>
1 голос
/ 15 декабря 2011

Используя IE8, я получаю следующее сообщение в Google iframe

Это содержимое не может быть отображено в рамке

Чтобы обеспечить безопасность информации, которую вы вводите на этом веб-сайте, издатель этого контента не позволяет отображать его в рамке.

Похоже, что Google использует некоторый код для предотвращения отображения своего контента в iframe

EDIT:

Я нашел приличное объяснение здесь: http://forums.asp.net/p/1733782/4654025.aspx/1?I+am+gettignthe+following+error+in+asp+net+with+facebook+app+early+it+is+working+fine+Once+i+click+on+Open+this+content+in+a+new+window+

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...