我有一个表格,我想嵌入一个网站,该网站在我的白名单上。
尝试嵌入它的其他网站应该只会出现错误页面。
<iframe src="https://domain.tld/getForm.php?embed=1&formId=123456"></iframe>
我希望我可以使用$_SERVER['HTTP_REFERER']
中的getForm.php
来检查嵌入网站,但它无效。
有没有人知道最佳做法或任何解决方法?
提前致谢!
答案 0 :(得分:17)
现在推荐使用内容安全策略标头。
来自MDN的示例:
))
有关更多详细信息,请参见:https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/frame-ancestors
答案 1 :(得分:9)
大多数浏览器都支持X-Frame-Options标头。
此标头会阻止访问:
X-Frame-Options: SAMEORIGIN
此标题允许访问:
X-Frame-Options: ALLOW-FROM [uri]
选项示例:
X-Frame-Options: DENY
X-Frame-Options: SAMEORIGIN
X-Frame-Options: ALLOW-FROM https://example.com/
PHP中的一个例子:
<?php header('X-Frame-Options: SAMEORIGIN'); ?>
您可以在这里阅读: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options
希望它有所帮助!