重複の可能性:
iframe から親 URL にアクセスする
私は現在 iframe タグを持っています。
<iframe src="www.mydomain.com/animation.html></iframe>
...そして、クライアントにこのタグを埋め込んでページにレンダリングしてもらいたいのですが、データベースにドメイン名リストのみを提供して、この iframe をレンダリングしたいので、どうすればよいですか。ありがとう
重複の可能性:
iframe から親 URL にアクセスする
私は現在 iframe タグを持っています。
<iframe src="www.mydomain.com/animation.html></iframe>
...そして、クライアントにこのタグを埋め込んでページにレンダリングしてもらいたいのですが、データベースにドメイン名リストのみを提供して、この iframe をレンダリングしたいので、どうすればよいですか。ありがとう
iframe 内にページを含めることができるサイトを制限したい場合は、各ドメインに一意のトークンを配布できます。各ドメインのコードは次のようになります。
<iframe src="http://mydomain.com/animation.html?token=absfqeqwe"></iframe>
これは小さな障壁を作るだけで、誰かがあなたの正当なサイトの 1 つからそれをコピーして、それを自分で使用することができます。
個人的にはこれは仕方ないと思います。
多くのブラウザは、ここx-frame-options header
で説明されている をサポートしています。これにより、ページを構成できる許容可能なドメインを一覧表示できます。
ここでの他の議論: Frame Buster Buster ... バスターコードが必要
parse_urlを使用できます。ドメインの検出に役立ちます
解決策 1: IP アドレスを許可し、他のすべての IP を許可しないことで、.htaccess ファイルを作成し、次のルールを追加するだけで実行できます。
order deny,allow
deny from all
allow from 111.222.333.444
解決策 2: 制限を適用する 2 番目の方法は、プレーン HTML ファイルの代わりに PHP ファイルを使用し、それに任意の種類の制限を追加することです。以下のコードを参照してください。
// animation.php
<?php
$allowed_domains = array(
'www.example-1.com',
'www.example-2.com',
'www.example-3.com',
);
if (in_array($_SERVER['SERVER_NAME'], $allowed_domains)) : ?>
Your I-frame content goes here!
<?php endif;?>