1

最近、私のウェブサイトのコンテンツが他の多くのウェブサイトに盗まれています。

彼らがしていることは、私のウェブサイトの iframe を作成し、ドメインに特定のデータを表示してトラフィックを増やすことです。htaccess気がついたらやmetaタグでブロックしてみました。

彼らが悪用する私の Web ページは、サブディレクトリの iframe を含む html ページです。彼らはそのiframeを使用せず、代わりにhtmlページの他のコンテンツをターゲットにしていますが、ブロックする私のテクニックはFirefoxでは機能せず、私のiframeもブロックします。Google Chrome と Internet Explorer では正常に動作します。

私の.htaccess設定 - Firefox では機能しますが、Google chrome と Internet Explorer では機能しません。また、同じドメインの iframe も表示されません。

Header set X-Frame-Options DENY
Header always append X-Frame-Options SAMEORIGIN

マイ メタ設定 - これは、Firefox を除くすべてのブラウザーで機能します。

<meta http-equiv="X-Frame-Options" content="deny">

一時的にこれを行って、自分のコンテンツを他の Web サイトで使用できないようにしました。カスタム ページへのリダイレクトのようなものが必要です。または、ユーザーがフレーム内をクリックするとリダイレクトされます。より良いアイデアは大歓迎です。

4

2 に答える 2

2

iframeのコンテンツネゴシエーションは、すべてクライアント(ブラウザ)によって処理されます。クライアントは、iframeのコンテンツを表示するかどうか、およびSAMEORIGINオプションを尊重するかどうかを決定します(一部のブラウザーでは表示されない場合があります)。

htaccessに関する限り、サーバーは、誰かがページに直接アクセスしたためのページのリクエストと、iframeに埋め込まれたページのリクエストの違いを認識していないため、htaccess内でできることはあまりありません。ページがiframe経由で読み込まれないようにするファイル。

さまざまなことを試すことができますが、そのほとんどは回避できます。

  1. iframe内にいてもかまわないページ用に別のスペースを作成し、それ以外の場所では、SAMEORIGINヘッダーを使用します

  2. iframeに埋め込まれたくないすべてのページについて、リファラーを確認し、iframeに埋め込まれたときにカスタムページにリダイレクトします。

    RewriteEngine On
    RewriteCond %{HTTP_REFERER} !^$
    RewriteCond %{HTTP_REFERER} !^http://your-website.com
    RewriteRule ^ /custom_page.html [L,R=302]
    
  3. iframeを使用せず、どこでもSAMEORIGINヘッダーを設定します。

于 2012-10-14T07:42:24.143 に答える
1

これを行う1つの方法は、JavaScriptを介してユーザーをサイトにリダイレクトすることにより、フレームから抜け出すことです。

if (top.location != location) {
    top.location.href = document.location.href;
}
于 2012-10-14T07:40:59.410 に答える