Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 框显时显示消息。htaccess_Html_Apache_.htaccess - Fatal编程技术网

Html 框显时显示消息。htaccess

Html 框显时显示消息。htaccess,html,apache,.htaccess,Html,Apache,.htaccess,当另一个站点试图为我的站点设置框架时,我试图显示一条错误消息。我正在使用.htaccess: 标题集X-Frame-Options拒绝 但是,这只会创建一个空白页面,没有iframe。是否可以显示错误消息,而不仅仅是一个空白屏幕 更新 我不是在寻找任何JavaScript解决方案 <!DOCTYPE html> <html lang=en> <head> <title>Blocking iFrame with JS<

当另一个站点试图为我的站点设置框架时,我试图显示一条错误消息。我正在使用.htaccess:

标题集X-Frame-Options拒绝

但是,这只会创建一个空白页面,没有iframe。是否可以显示错误消息,而不仅仅是一个空白屏幕

更新

我不是在寻找任何JavaScript解决方案

<!DOCTYPE html>

<html lang=en>
    <head>
        <title>Blocking iFrame with JS</title>
    </head>
    <body>
        <p>page content</p>

        <script src='iframe/blocker.js'></script>
    </body>
</html>
注意:此JS代码重定向到父页面(iFrame所在的位置)-当然,您也可以使用covener的解决方案,他对您的问题的解决方案非常有趣:)

有关源页面上“iframed”页面不好的原因的更多信息

要求:启用JavaScript

缺点:我不建议这样做,因为攻击者拥有与您相同的工具,他们可以使用沙箱来阻止您运行JavaScript或重定向窗口


来源:

您可以使用mod_rewrite或
检查引用者(如果是iframe,它是封闭页面)并将站点的整个部分重定向到静态文件

以下是许多可能的入门食谱中的一个,可以对照可接受的referer域列表进行检查:

重新启动发动机 重写cond%{REQUEST_URI}!iframe_err.html 重写cond%{HTTP_REFERER}^($| http[s]:/(www.)?mydomain.com)
重写规则。*/iframe\u err.html

iframe由浏览器处理

客户机决定是否显示iframe的内容,以及是否遵守SAMEORIGIN选项

即使使用.htaccess,服务器也不知道整个页面的页面请求之间的区别,就像有人直接访问页面或从iframe访问页面一样

您可以做的是检查HTTP\u REFERER。检查这个例子,我还并没有测试过它,但我的想法是阻止页面从你们自己的网站以外的任何地方访问

RewriteEngine On

RewriteCond %{QUERY_STRING} !^id=[^&]+ [NC]
RewriteCond %{HTTP_REFERER} !^http://your-website.com
# then redirect to a different page
RewriteRule !^start start [L,NC,R=302]

但正如我前面提到的HTTP_REFERER,它不是100%可靠的解决方案,可以被欺骗。但是,互联网上的任何东西都不是100%可靠的。

您可以在消息中显示自定义错误页面

ErrorDocument 403 /access.html 
详情如下:1


  • 如果您不是在寻找javascript解决方案,您可能应该删除javascript标记。@SeanWessell-很好,我忘了我有这个!您应该查看SO使用的framebuster。试着从SO框出一个页面,看看会发生什么
    ErrorDocument 403 /access.html