防盜鏈概念主要是從網站的業務中起來,原有定義只要針對網站內容中的文字,圖片被他人非法使用致使,隨着網站內容的逐漸豐富,出現了更多音樂,視頻,flash等方面內容,同時針對防盜鏈的技術要求也在不斷增強。
視頻直播業務的要求在這方面會更加劇要,舉例來講,一個教育網站,老師的實時授課視頻,若是未通過受權,就被其餘網站非法接入,在其餘網站就能夠隨意的觀看,這對於經營者來講,將是巨大的損失。若是一個現場的演唱會直播,一樣在未通過受權的狀況下,就能夠被他人接入觀看,那演唱會的銷售就會直接被影響。而視頻直播的內容,每每都是通過大量資源投入而製做的,一旦被輕易的盜用,對於業務的危害是顯而易見的。
什麼是防盜鏈
防盜鏈其實就是採用服務器端編程,經過url過濾技術實現的防止盜鏈的軟件。好比file.abc.com/test.rar 這個下載地址,若是沒有裝防盜鏈,別人就能垂手可得的在他的網站上引用這個地址。若是對file.abc.com 這個站的服務器端編程,好比經過file.abc.com/test.rar?authcode=xxxxxxxxxxxxxxxx& ip=127.0.0.1 綁定了ip,只能經過127.0.0.1來訪問這個連接,而沒法經過其餘IP訪問。apache
防盜鏈的定義
此內容不在本身服務器上,而經過技術手段,繞過別人放廣告有利益的最終頁,直接在本身的有廣告有利益的頁面上向最終用戶提供此內容。 經常是一些名不見經傳的小網站來盜取一些有實力的大網站的地址(好比一些音樂、圖片、軟件的下載地址)而後放置在本身的網站中,經過這種方法盜取大網站的空間和流量。編程
防盜鏈的產生
通常咱們在網上瀏覽一個完整的頁面並非一次性所有傳送到客戶端的。若是所請求的頁面帶有圖片或其餘信息,那麼第一個Http請求傳送的是這個頁面的文本,而後經過客戶端的瀏覽器對這段文本進行解釋執行,若是發現其中還有圖片,那麼客戶端的瀏覽器會再次發送一條Http請求,當這個請求被處理後這個圖片文件纔會被傳送到客戶端,最後瀏覽器回將圖片安放到頁面的正確位置,就這樣一個完整的頁面要通過屢次發送Http請求才可以被完整的顯示。基於這樣的機制,就會產生盜鏈問題:若是一個網站中沒有其頁面中所說圖片信息,那麼它徹底能夠連接到其餘網站的圖片信息上。這樣,沒有任何資源的網站利用了別的網站的資源來展現給瀏覽者,提升了本身的訪問量,而大部分瀏覽者又不會很容易地發現,這樣顯然對於那些被利用了資源的網站是不公平的。一些不良網站爲了避免增長成本而擴充本身站點內容,常常盜用其餘網站的連接。一方面損害了原網站的合法利益,另外一方面又加劇了服務器的負擔。瀏覽器
防盜鏈的實現
要實現防盜鏈,咱們就必須先理解盜鏈的實現原理,提到防盜鏈的實現原理就不得不從HTTP協議提及,在HTTP協議中,有一個表頭字段叫referer,採用URL的格式來表示從哪兒連接到當前的網頁或文件。換句話說,經過referer,網站能夠檢測目標網頁訪問的來源網頁,若是是資源文件,則能夠跟蹤到顯示它的網頁地址。有了referer跟蹤來源就好辦了,這時就能夠經過技術手段來進行處理,一旦檢測到來源不是本站即進行阻止或者返回指定的頁面。 若是想對本身的網站進行防盜鏈保護,則須要針對不一樣的狀況進行區別對待。若是網站服務器用的是apache,那麼使用apache自帶的Url Rewrite功能能夠很輕鬆地防止各類盜鏈,其原理是檢查refer,若是refer的信息來自其餘網站則重定向到指定圖片或網頁上。 若是服務器使用的是IIS的話,則須要經過第三方插件來實現防盜鏈功能了,如今比較經常使用的一款產品叫作ISAPI_Rewrite,能夠實現相似於apache的防盜鏈功能。另外對於論壇來講還可使用「登陸驗證」的方法進行防盜鏈。安全
奧點雲流媒體針對防盜鏈作了針對性的技術方案,用戶能夠針對不一樣的使用場景和條件,進行相應的防盜鏈處理。服務器
這是最通行的作法,從技術實現上也是最爲簡潔和容易使用,可是缺點也是比較明顯的,只適合於網站頁面模式使用,一旦脫離的瀏覽器,就會受到限制。同時從技術上的破解相對也是容易的。網站
這種作法,是針對每一個視頻源都設置指定的加密Token,使用者只有得到Token,才允許受權接入,適合於網站頁面,客戶端,pc,手機使用,實施相對簡單,可是因爲Token的相對固定,一旦Token被他人知曉,也會面臨內容源被盜取的風險。加密
發佈令牌受權,是在原有Token受權模式上,作了更進一步的增強,Token每時每刻都在不斷隨機變化,使用者必須鏈接到受權服務器,每次接入的時候,都須要從受權服務器獲取最新的Token,才允許接入。這個就相似銀行的我的usb安全密碼器,在登陸網上銀行的時候,須要獲取隨機登陸密碼,才能夠登陸網銀。 在這種狀況下,使用者若是沒法鏈接到受權服務器,幾乎是不可能獲得鏈接令牌,從而杜絕的被非法使用的可能性。這種模式一樣適用於頁面,客戶端,pc,手機各類接入模式。同時實施相對簡單。url