Iframe с внешней страницей не работает
Я пытаюсь встраивать веб-страницу в iframe, но она вообще не работает. внутренние страницы с относительным путем отображаются нормально. но этот простой код не работает:
<iframe src="http://www.google.com/"></iframe>
место, которое должно показать iframe, просто пусто. я посмотрел в источнике страницы и ничего не после
Как это может быть?
Ответы
Ответ 1
Google использует HTTP-заголовок X-FRAME-OPTIONS, чтобы запретить размещение своих страниц в iframe:
https://developer.mozilla.org/en/The_X-FRAME-OPTIONS_response_header
Почти все современные браузеры откажутся помещать страницы с этим HTTP-заголовком в iframe. Там вы ничего не можете с этим сделать.
Ответ 2
Потому что внутренняя страница сделала что-то, чтобы предотвратить установку iframe.
Может быть, кусок javascript, подобный этому
if (window.top != window.self) {window.top.location = window.self.location;}
Ответ 3
Предположим, что ваш URL-адрес: www.google.com, i.e $url = "www.google.com";
$headerRes = get_headers($url); //get the header response
foreach($headerRes as $val)
if($val=="X-Frame-Options: SAMEORIGIN" || $val=="X-Frame-Options: DENY"){
header("location:".$url);
exit;
}
//simply redirect to their website instead of showing blank frame
Надеюсь, я хорошо объяснил.