我正在尝试在我的网站上使用简单的iframe。但它没有出现。请看截图。这是我的代码:
<iframe src="https://www.w3schools.com"></iframe>
答案 0 :(得分:4)
你的代码是对的,它是w3schools.com的问题所在。打开开发人员控制台可以看出这一点:
Refused to display 'https://www.w3schools.com/' in a frame because it set 'X-Frame-Options' to 'sameorigin'.
这意味着w3schools.com只会在&#34;起源&#34; (您的相框所在的网站)来自w3schools.com。否则,你只会得到一个空白框架。
答案 1 :(得分:1)
来自W3Schools的页面不会显示在来自不同服务器的iframe
元素中,因为W3Schools站点实施了iframe阻止策略。为此,它使用 X-Frame-Options
。 (另请参见how to block website from loading in iframe?。)
您可以通过检查网站的HTTP标头来检查网站是否实施了此策略。例如,在Firefox中,按F12
打开检查工具,然后转到 Network ,选择通过HTTP发送的对象之一,然后查看标头(或过滤标头)例如“ x帧”)。下面是W3Schools的外观:
注意 x-frame-options:SAMEORIGIN (位于屏幕右下方)。在服务器端设置了x-frame-options: SAMEORIGIN
(或在其他一些站点x-frame-options: DENY
上),您将无法在iframe
或frame
内从该站点加载页面。
有关更多背景信息,请参见X-Frame-Options – How to Combat Clickjacking,该书还介绍了x-frame-options
标头中可以使用的其他值。
如果要使用不阻止iframe加载的服务器上的网页进行测试,请尝试使用https://wiki.archlinux.org/。