2012-03-03 133 views
1

我正在建立一個網站,用戶從其他網站實質上「標記」某些東西 - 例如他們瀏覽第三方的目錄,並且一旦他們點擊了他們喜歡的項目,他們就會以某種方式向我的網站表明該特定項目(例如,通過url)。我最初的想法是有一個iframe,在我自己的網站上的一個「標記」按鈕在頂部的一個小酒吧,並在iframe中的第三方網站 - 但是,我發現不可能獲得iframe的網址如果用戶導航離開初始網址。有沒有其他辦法可以做到這一點?替代獲取iframe網址

回答

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