如何利用.htaccess防盜鏈網站圖片_PHP教程

來源:互聯網
上載者:User
 防盜鏈網站圖片顧名思義就是防止外部網站盜用我們網站的圖片,它的作用就是防止其他人在其他的部落格,空間網站裡面貼上我們網站的圖片從而導致訪問者們沒有進入我們的網站,但是還是耗費了我們網站空間的流量。這是不是非常的不爽?好了,下面我們就來看看如何利用.htaccess來防止別人盜鏈我們網站的圖片吧!

利用.htaccess來防盜鏈圖片其實很簡單,只要你懂得.htaccess規則,也就一句話的事兒。下面我們來看一個完整的例子:

RewriteEngine OnRewriteBase /RewriteCond %{HTTP_REFERER} !^$ [NC]RewriteCond %{HTTP_REFERER} !phpernote.com [NC]RewriteCond %{HTTP_REFERER} !google.com [NC]RewriteCond %{HTTP_REFERER} !baidu.com [NC]RewriteCond %{HTTP_REFERER} !sogou.com [NC]RewriteCond %{HTTP_REFERER} !soso.com [NC]RewriteCond %{HTTP_REFERER} !youdao.com [NC]RewriteCond %{HTTP_REFERER} !yahoo.cn [NC]RewriteRule ^uploadfiles/(.*)\.(gif|jpg|png)$ http://www.phpernote.com/images/loading.gif [L]

下面對以上這段代碼做一下詳細的解釋:

RewriteEngine On

url重寫引擎開關,如果設為off,則任何重寫規則定義將不被應用,該開關的另一好處就是如果為了臨時拿掉重寫規則,則改為off再重啟動Apache即可,不必將下面一條條的重寫規則注釋掉。注意這條語句盡量寫在檔案的頭一行。

RewriteBase /

這條語句的作用是如果在下面的rewriterule定義中被重寫後的部分(此處為檔案名稱index.html)。如果前面沒有/,則是相對目錄。一般直接設定為 / 意思就是根目錄。


RewriteCond %{HTTP_REFERER} !^$ [NC]

允許通過空的“HTTP_REFERER”的訪問,即在使用者在瀏覽器地址欄中直接輸入圖片地址的情況片是可以顯示的。一般而言,這是可選的,不過,建議做如上設定,否則如果強迫必須具有“HTTP_REFERER”才能訪問的話,可能會帶來某些問題,比如說在使用者通過Proxy 伺服器訪問時。

RewriteCond %{HTTP_REFERER} !phpernote.com [NC]
RewriteCond %{HTTP_REFERER} !google.com [NC]
RewriteCond %{HTTP_REFERER} !baidu.com [NC]
RewriteCond %{HTTP_REFERER} !sogou.com [NC]
RewriteCond %{HTTP_REFERER} !soso.com [NC]
RewriteCond %{HTTP_REFERER} !youdao.com [NC]
RewriteCond %{HTTP_REFERER} !yahoo.cn [NC]

這裡設定的是允許訪問的HTTP來源,這裡包括我們自己的網站、google.com、baidu.com、sogou.com、soso.com、youdao.com、yahoo.cn。這也是為了讓搜尋引擎能正常的抓取我們的網站圖片做考慮。

RewriteRule .*\.(gif|jpg|png|bmp)$ http://www.phpernote.com/change.gif [R,NC,L]

OK,這裡就是設定防盜鏈的規則了。這裡的設定是讓所有盜鏈本網站的 jpg、gif、png、bmp 等圖片檔案的網頁,一律顯示以 http://www.phpernote.com/change.gif 這個檔案替代顯示。特別需要注意的是:替換顯示的圖片不要放在設定防盜鏈的目錄中或者包含在設定了防盜鏈的目錄中,並且該圖片檔案體積越小越好。當然你也可以不設定替換圖片,使用如下這樣的規則,盜鏈的網站的圖片將顯示一篇空白

RewriteRule .*\.(gif|jpg|png|bmp)$ – [F]

另外如果你不明白上面的規則後面的中括弧裡面的 NC F L 的字元含義的話,請參照本站:.htaccess 文法參數說明

好了,經過以上的設定,所有盜鏈你網站的圖片檔案的網站,都將會因為這種不友好的顯示而放棄盜鏈了,這在一定程度上減少了你的空間伺服器不必要的流量,是一件值得去做的事情。

 

您可能感興趣的文章

  • .htaccess如何設定防盜鏈某個目錄的圖片
  • 利用.htaccess拒絕某ip訪問網站
  • 使用Apache的htaccess防止圖片被盜鏈
  • 利用.htaccess禁止列表目錄
  • 10 段實用的 .htaccess 程式碼片段
  • 通過.htaccess設定網站預設首頁
  • 如何通過.htaccess修改網站預設首頁?
  • php利用curl實現多線程的類,php curl多線程下載圖片

http://www.bkjia.com/PHPjc/764200.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/764200.htmlTechArticle防盜鏈網站圖片顧名思義就是防止外部網站盜用我們網站的圖片,它的作用就是防止其他人在其他的部落格,空間網站裡面貼上我們網站的圖...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.