2011-01-24 99 views
0

是否可以使用cURL「鏡像」網站?通過cURL鏡像網站

所以基本上我有,www.mysite.com和www.stackoverflow.com這是我想鏡像站點。

當我加載www.mysite.com我希望它調用一個cURL函數,下載www.stackoverflow.com主頁並顯示給用戶,但在它之前,我需要有某種正則表達式來編輯所有的鏈接(也css/js鏈接)類似www.mysite.com/?page=/questions

我知道像搜索這樣的東西,當然'提問問題'功能不起作用,但網站的一般瀏覽應該沒問題吧?

你會如何做這樣的事情呢?

謝謝,

+7

它被認爲是不好的風格懵了其他網站的辛勤工作。鏈接到該網站,而不是創建另一個毫無價值的內容抓取網站。 – PatrikAkerstrand 2011-01-24 10:01:42

+1

感謝您的想法,但我並不打算'扯下其他網站的辛勤工作',或創建'另一個毫無價值的內容抓取網站'。 – 2011-01-24 10:04:42

+0

如果它是唯一的計算器/ stackexchange,你可能想看看官方的API(http://blog.stackoverflow.com/2010/05/stack-exchange-api-public-beta-starts/)或一個已有的PHP實現(http://stackapps.com/questions/319/phpstack-a-php-wrapper-to-the-se-api或http://stackapps.com/questions/826/stack-php - 清潔 - 易於使用的包裝器換PHP堆棧的PHP-0-3-釋放)。 – svens 2011-01-24 10:13:40

回答

0

的Apache的mod_proxy可以幫助你做你想要的:與mod_proxy的和mod_proxy_html部署Apache系統改寫鏈接:http://www.apachetutor.org/admin/reverseproxies

但請拜託不要讓另一個不值錢的內容刮的網站 - - 用這個好,而不是邪惡。 :)

1

好吧,你最好做一個重定向。

,或者如果你想在瀏覽器中使用框架中顯示您的網址...

UPDATE:

,但如果你wan't更改HTML載入捲曲回答成div。你可以在之前解析答案。用PHP即str_replace("www.stackoverflow.com", "www.mysite.com", $curl_answer);

3

wget的是非常好的完成這個任務。

從你的命令行,只要運行:

wget -mkx -e robots=off http://the-site-you-want-to-mirror.com 

,它會的所有網頁,圖片,樣式,js文件等下載到本地目錄和重寫所有的鏈接,使他們在本地工作。

如果這不是你自己的服務器,是很好,並添加-w 2添加頁面請求之間有2秒的延遲。