php禁止外部盜鏈的方法:先找到並開啟「.htaccess」檔案;然後在該檔案中新增內容為「RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ [NC]」;最後儲存該文件即可。
推薦:《PHP影片教學》
PHP防止盜鏈的方法
防盜鏈的技術已經很普遍了,有些網站不喜歡自己的圖片被別的網站直接複製使用,便使用了防盜鏈的技術,這樣別人在直接複製使用網站圖片時,圖片便會依照程式的設定不顯示或顯示防盜鍊等字樣。
使用了防盜鏈技術,不僅可以防止自己的圖片被盜用,也可以節省自己網站下載圖片的流量,覺得還蠻不錯的說,那麼在PHP環境下該如何防止盜鏈呢?在PHP環境下我們知道通常都是使用Apache伺服器,那麼主要看下Apache防盜鏈的方法吧,其實IIS也是同一個原理。
Apache防盜鏈:
大多數的虛擬主機都是Apache的,因此最方便的防盜鏈設定莫過於利用.htaccess檔了。網路搜尋下方法很多,於是我總結了下,絕對好用的方法。把下面的程式碼加到.htaccess檔裡,修改下即可。
RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ [NC] RewriteCond %{HTTP_REFERER} !60ie.net [NC] RewriteCond %{HTTP_REFERER} !youdao.com [NC] RewriteCond %{HTTP_REFERER} !zhuaxia.com [NC] RewriteCond %{HTTP_REFERER} !twitter.com [NC] RewriteCond %{HTTP_REFERER} !facebook.com [NC] RewriteCond %{HTTP_REFERER} !xianguo.com [NC] RewriteCond %{HTTP_REFERER} !google.cn [NC] RewriteCond %{HTTP_REFERER} !google.com [NC] RewriteCond %{HTTP_REFERER} !google.com.tw [NC] RewriteCond %{HTTP_REFERER} !google.com.sg [NC] RewriteCond %{HTTP_REFERER} !google.com.hk [NC] RewriteCond %{HTTP_REFERER} !bloglines.com [NC] RewriteCond %{HTTP_REFERER} !soso.com [NC] RewriteCond %{HTTP_REFERER} !mail.qq.com [NC] RewriteCond %{HTTP_REFERER} !cn.bing.com [NC] RewriteCond %{HTTP_REFERER} !image.baidu.com [NC] RewriteCond %{HTTP_REFERER} !feedburner.com [NC] RewriteCond %{HTTP_REFERER} !feedsky.com [NC] RewriteRule .(png|jpg|gif)$ [R,NC,L]
程式碼解釋:
先看最後一行,我對網站上的png、jpg、gif檔案做了防盜鏈保護,一旦我網站裡的圖片在上述白名單之外的網站出現,全部顯示最後一行程式碼中的圖片。
Nginx防盜鏈:
Nginx不支援.htaccess,設定起來稍微麻煩了點。首先要用文字編輯器開啟/usr/local/nginx/conf/nginx.conf這個檔案(如果你使用的是vhost,則到vhost裡找對應的conf檔
),將如下程式碼配對在server{ }段裡面即可,注意我說的不是拷貝,而是配對。
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; valid_referers none blocked *.ilucong.com *.youdao.com *.zhuaxia.com *.xianguo.com *.google.cn *.google.com *.google.com.tw *.google.com.sg *.google.com.hk *.bloglines.com image.soso.com cn.bing.com image.baidu.com *.feedburner.com *.feedsky.com; if ($invalid_referer) { rewrite ^/ ; #return 404; } }
注意:盡量不要使用windows自帶的記事本編輯,可能會出現亂行;編輯完之後,重啟Ngnix服務方可生效
以上是php如何禁止外部盜鏈的詳細內容。更多資訊請關注PHP中文網其他相關文章!