ホームページ >ウェブフロントエンド >htmlチュートリアル >Web ページが iframe にネストされるのを防ぐにはどうすればよいですか?
タイトルのように、私の Web サイトのコンテンツが他の人の Web サイトに iframe されています。ネストされないようにする方法はありますか?
もっと良い方法があります:
応答ヘッダーに X-Frame-Options を追加します
値は 3 つあり、ほとんどのブラウザがサポートしています:
DENY: ブラウザは現在のページによるフレーム ページのロードを拒否します
SAMEORIGIN : フレームページのアドレスは、同じオリジンドメイン名のページのみ可能です
ALLOW-FROMorigin:オリジンはフレームのロードを許可するページアドレスです
このようにすると、フレームのロードを許可するページアドレスになります
は、さまざまなソースからのページによって iframe に含まれています
スクリプトの作成
if (window != window.top) { window.top.location.replace(window.location) // 这是直接代替外窗,你也可以干别的 }
if (window != window.top) { window.top.location.replace(window.location) //加弹窗代码 干死他们 还赚钱 }
これが新浪微博のやり方です
if (top != self) { top.location = self.location; }
基本的に、ほとんどの iframe のネストに耐えることができます。
また、人々が iframe ネストを使用して攻撃を実行する方法を見てください。そうすれば、自分自身を守る方法がわかります
現時点での最善の JS 防御ソリューションは、次のとおりです:
if (self == top) { var theBody = document.getElementsByTagName('body')[0]; theBody.style.display = "block"; } else { top.location = self.location; }🎜 フィルター スクリプトを追加します。原理は、現在の URL リンクが自分のものではないことが検出された場合に、src が空のアドレスを指すようにすることです。具体的なコードはグーグルで検索してください。 🎜
以上がWeb ページが iframe にネストされるのを防ぐにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。