我网站有个用iframe调用显示的php文件,能不能防止别人也用iframe来调用?

解决方案 »

  1.   

    对用户提交的 < > 过滤为 &lt; &gt;
      

  2.   

    用js吧<script language="javascript">
          if (self!=top) window.top.location.replace(self.location);
    </script>
      

  3.   


    /******判断来路是否正确******/
    $referer = $_SERVER['HTTP_REFERER'];
    $preg = '/http:\/\/yourDomain\.com\/.*?/i';
    if( !preg_match($preg, $referer) ){
    Header("http/1.1 404 Not Found");
    exit();
    }
      

  4.   

    $_SERVER['HTTP_REFERER'] 这个没用吧?
      

  5.   

    但是,如何别人使用embeded,就可以。
      

  6.   

    你自己调用的那个html是在同一个server上吗?或者可以操作到和被include的页面相同的资源,如果不从server端想办法,基本没有可能"彻底"防止别人调用
      

  7.   


    怎么会呢?被iframe的页面取到的来路就是父页面。
      

  8.   


    首先为自己的无知道歉——top、self是全局变量。
    但是盲从这个js的同学,你们没发现这个js会导致任何调用它的页面都会跳转了吗?这根本不符合LZ的需求