0

ユーザーが基本的に iframe 内から Web をナビゲートできるサイトを作成したいと考えています。問題は、iframe 内でレンダリングされるものをより細かく制御できるようにしたいということです。具体的には、

  • 画像やテキストを除外したり、フォームを無効にしたりできるようにしたい.
  • また、ユーザーがどのリンクをクリックしたかなどのフィードバックを収集できるようにしたいと考えています。

質問1:

これは、フロントエンドにhtmlとjavascriptを使用して、標準のバックエンドスクリプト言語(phpなど)を使用しても可能ですか?

質問2:

レンダリングする前にサイトのソースを取得し、必要な操作を行い、最後に再レンダリングする必要がありますか?

質問 3:

誰かがここで発生するプログラミング フローを説明してもらえますか (可能であると仮定して)。

4

2 に答える 2

1

サイトをレンダリングする前に、(サーバー側のコードを含む) サイトのソースを取得することをお勧めします。JavaScript を使用しようとすると、クロスサイト スクリプティングの問題が発生する可能性があります。iframe は render.php のようなページをロードし、レンダリングするページのアドレスをクエリ文字列パラメーターに渡します。次に、正規表現を使用して、render.php がアドレスからダウンロードする HTML 内の要素を見つけます。必要に応じて HTML を書き換えてから、すべてを iframe に書き出します。

ユーザーの移動先を追跡したい場合は、ユーザーが管理しているページに移動し、ターゲット サイトにリダイレクトされるように、リンクを書き換えます。例: ページ内のリンクは google.com に移動する必要があります。それらを tracker.php?target= http://google.comに送信します。tracker.php を制御し、このページの各読み込みをログに記録して、ユーザーをターゲット サイトにリダイレクトできます。

アップデート:

別の可能な解決策は、Apache または他のサーバーを使用してターゲット Web サイトをプロキシすることです。これには mod_proxy のようなモジュールがあります。HTML を解析できるモジュールや、独自のモジュールを作成できるモジュールもあるかもしれません。

ターゲット サイトを完全に制御できなければ、あなたの質問に対して提供された最善の解決策でさえ、ややもろくなることを指摘しておく必要があります。多くのエラー処理または警告が必要になるでしょう。

于 2009-09-07T03:20:47.493 に答える
0

これを見ることができます。それは iFrame を非常にうまく使用しており、おそらくそれが持っているライブラリを使用することさえあります。

于 2009-09-07T03:30:08.660 に答える