2012-03-03 18 views
1

私はユーザーが本質的に別のサイトから物事を「マークする」ウェブサイトを構築しています。彼らは第三者のカタログを閲覧し、好きな項目にヒットしたら、どういうわけかその特定の項目について私のサイトに(たとえばURLを介して)示します。私の最初の考えは、iframe、トップの小さなバーの自分のサイトに「マーク」ボタン、iframeのサードパーティのサイトを持っていたということでしたが、iframeのURLを取得することは不可能であることがわかりましたユーザーが最初のURLから移動した場合。これに代わる方法はありますか?iframeのURLを取得する代わりに

答えて

0

他のサイトからHTMLを取得し、変更してユーザーに表示することができます。もちろん、サイト所有者からの助成金を得て、htmlレイアウトの更新のために修飾子を更新する必要があります。そしてあなたは、CSS、jsなどを含む、ページからの何らかのすべてのリンクを解決する必要があります。

Iframeはオプションではありません。フレーム内のページを管理することはできません。これは、すべてのブラウザのセキュリティポリシーです。

0

(私は少し遅れだけど、誰かがそれが役立つかもしれ知っている)

私は同じ問題を抱えていました。私は、PHPでプロキシを作成することしかできないという結論に達しました。そして、それは私が( "proxy.php" ファイルの中身)やったことだ:

<?php 

$proxy = 'http://yoursite.com/proxy.php'; 
$host = parse_url($_GET['url'], PHP_URL_HOST); 
$dir = $_SERVER[DOCUMENT_ROOT].'/cache_proxy/'.$host; 
if(!is_dir($dir)) 
    mkdir($dir); 
$filepath = $dir.'/'.md5($_GET['url']); 

if(is_file($filepath)){ 
    include($filepath); 
}else{ 
    $page = file_get_contents($_GET['url']); 


    $page = preg_replace('/(a href)=[\'\"](http.*)[\'\"]/', '$1="'.$proxy.'?url=$2"', $page); 
    $page = preg_replace('/(a href)=[\'"][^http](.*)[\'"]/', '$1="'.$proxy.'?url=http://'.$host.'/$2"', $page); 
    $page = preg_replace('/(href|src)=[\'"][^http+](.*)[\'"]/', '$1="http://'.$host.'/$2"', $page); 

    file_put_contents($filepath, $page); 

    echo $page; 
}?> 

今、あなたは、SRC = "http://yoursite.com/proxy.html?url=http://othersite.com"

でのiframeを挿入することができます
関連する問題