精品主題,實戰(zhàn)科普,最新行業(yè)熱點話題,隨時掌握云上咨訊。
盜鏈是指服務提供商自己不提供服務的內(nèi)容,通過技術手段繞過其它有利益的最終用戶界面(如廣告),直接在自己的網(wǎng)站上向最終用戶提供其它服務提供商的服務內(nèi)容,騙取最終用戶的瀏覽和點擊率。受益者不提供資源或提供很少的資源,而真正的服務提供商卻得不到任何的收益。
網(wǎng)站盜鏈會大量消耗被盜鏈網(wǎng)站的帶寬,而真正的點擊率也許會很小,嚴重損害了被盜鏈網(wǎng)站的利益。早期的盜鏈一般是一些比較小的網(wǎng)站盜取一些有實力的大網(wǎng)站的地址,盜鏈的目標比較有針對性,現(xiàn)如今,一些大型的網(wǎng)站也已經(jīng)開始把盜鏈的目光鎖定在了整個互聯(lián)網(wǎng)上,竊取整個互聯(lián)網(wǎng)上的其它機器的帶寬。
如果網(wǎng)站盜鏈,將被大量消耗帶寬,真正的點擊率也會很小,嚴重損害了網(wǎng)站的利益。下面是本人收集到的一些防范盜鏈的方法:
1、不定期更名文件或者目錄
不定期的更改文件或者目錄的名稱,是最原始的反盜鏈的方式,可以比較有效地防止盜連,這種方法一般工作量比較大。但是批量的文件改名是完全可以自動化的,而且也比較容易實現(xiàn)。在文件的更名過程中, 可能會有客戶正在下載該文件,這樣會導致正常的客戶訪問失敗,盡管這個問題容易解決,但是也不能夠忽視。
2、限制引用頁
這種防盜鏈原理是,服務器獲取用戶提交信息的網(wǎng)站地址,然后和真正的服務端的地址相比較,如果一致則表明是站內(nèi)提交,或者為自己信任的站點提交,否則視為盜鏈。實現(xiàn)時可以使用HTTP_REFERER1 和htaccess 文件(需要啟用mod_Rewrite),結(jié)合正則表達式去匹配用戶的每一個訪問請求。對于每一個HTTP 請求, 服務器都要查找.htaccess 文件,增加了讀取文件的次數(shù),一定程度上降低了性能。另外,服務器打開這個功能,有比較多的限制。
3、文件偽裝
文件偽裝是目前用得最多的一種反盜鏈技術,一般會結(jié)合服務器端動態(tài)腳本(PHP/JSP/ASP)。實際上用戶請求的文件地址,只是一個經(jīng)過偽裝的腳本文件,這個腳本文件會對用戶的請求作認證,一般會檢查Session,Cookie 或HTTP_REFERER 作為判斷是否為盜鏈的依據(jù)。而真實的文件實際隱藏在用戶不能夠訪問的地方,只有用戶通過驗證以后才會返回給用戶。
4、加密認證
這種反盜鏈方式,先從客戶端獲取用戶信息,然后根據(jù)這個信息和用戶請求的文件名字一起加密成字符串(Session ID)作為身份驗證。只有當認證成功以后,服務端才會把用戶需要的文件傳送給客戶。一般我們會把加密的Session ID 作為URL 參數(shù)的一部分傳遞給服務器,由于這個Session ID 和用戶的信息掛鉤,所以別人就算是盜取了鏈接,該Session ID 也無法通過身份認證,從而達到反盜鏈的目的。這種方式對于分布式盜鏈非常有效。
5、其它方法
其它反盜鏈方式也有不少, 這里只列出一個大概思想作為參考:⑴ IIS 反盜鏈, 利用ISAPI_Rewrite,可作為Windows下反盜鏈的一個解決方案;⑵圖片反盜鏈,在圖片中加入水印,雖然盜鏈者可以達到目的,但是卻也在為自己的網(wǎng)站做宣傳。