2009-12-07 46 views
2

我有我的媒體文件的目錄,我不需要在其他網站上顯示它們。 服務器不支持.htaccess,因爲它使用nginx。如何防止流式內容的盜鏈?

如何爲我的文件啓用熱鏈接保護? 謝謝。

回答

3

最簡單的方法是檢查HTTP請求中的Referer標頭。基本上,如果該標題沒有來自您的網站的網址,那麼這可能是熱鏈接。

這有以下幾個問題:

  • 網址標頭可以鍛造 - >熱鏈接的效果
  • 所有的用戶代理不必發送網址標頭 - >合法的用戶可能無法獲得的內容。

您還可以在用戶瀏覽您的網站時設置cookie,並在用戶訪問流媒體內容時檢查cookie是否存在。

+0

我喜歡cookie選項,易於加密並在一段時間後過期,比引用者更難以欺騙 – LorenVS 2009-12-07 10:54:34

1

的細節可以過時,但伊戈爾給引薦映射圖像防盜鏈,可能是這裏有用的例子:http://nginx.org/pipermail/nginx/2007-June/001082.html

如果你決定去引薦路線。

如果您使用的是memcached,您還可以存儲商店客戶端IP地址一段時間,並且只有在緩存中找到未到期的客戶端IP時才提供流式媒體。在正常瀏覽期間,客戶端IP會被緩存,以確保查看流式內容的人最近也訪問過您的網站。

0

在我的hostgator站點上,他們使用nginx作爲Apache(nginx + apache)的代理。也許這會幫助你。同樣,如果你有權訪問日誌,如果你看到很多來自ip的流量,我會調查,如果它指向一個站點,則阻止另一個web服務器。 Php的file_get_contents不會被htaccess或我知道的其他任何東西阻止ip。