首先給大家講一下防盜鏈原理: http標準協議中有專門的欄位記錄referer資料。
1.referer資料可以追溯上一個入站地址。
2.referer資料還可以追蹤包含顯示他的網頁地址。
因此所有防盜鏈方法都是基於這個Referer欄位 網上比較多的2種。
(1) 使用apache檔案FileMatch限制,在httpd.conf中增加 ( 其實也可以將把下面的語句存成一個.htaccess檔案),並放到你的網站的根目錄(就是www/html目錄),這樣子別人就沒有辦法盜連你的東西了
SetEnvIfNoCase Referer "^ http://yahoo.com/" local_ref=1 Order Allow,Deny Allow from env=local_ref Allow from 127.0.0.1
這種很方便禁止非允許訪問URL引用各種資原始檔 請大家注意,把第一句"^ http://xxxx.com/"改為你的網站,比如我的網站是: http://www. xinoso. com 我應該這麼寫的 "^ http://www. xinoso. com/"
(2) 使用rewrite,需要增apache mode_rewrite,支援.htaccess檔案目錄許可權限制,在虛擬主機根目錄增加.htaccess檔案,描述從定向,把非本地地址refer的圖片檔案都從定向到警告圖片或者警告網頁上。首先要確認你的伺服器或空間的伺服器解譯引擎為Apache2,還有支援.htaccess客戶設定檔案, 如果你有自己的伺服器就請先對./conf/httpd.conf 檔案做以下修改找到:#LoadModule rewrite_module modules/mod_rewrite.so 把前面的 # 給去丟 找到等一個 AllowOverride None 改為 AllowOverride All 重啟Apache2伺服器 接下就是做一個 .htaccess 檔案了,其 .htaccess 檔案內容為:RewriteEngine on RewriteCond %{HTTP_REFERER} !^ http://aaoo.net/.*$ [NC] RewriteCond %{HTTP_REFERER} !^ http://aaoo.net$ [NC] RewriteCond %{HTTP_REFERER} !^ http://www.aaoo.net/.*$ [NC] RewriteCond %{HTTP_REFERER} !^ http://www.aaoo.net$ [NC] RewriteRule .*.(jpg|jpeg|gif|png|bmp|rar|zip|exe)$ http://down.yoyo.com.ru/err.html [R,NC]
其中有色的地方都是要改為你的:紅色:就是改為你提供下載頁面的地址,也就是隻有透過這個地址才可以下載你所提供的東東。藍色:就是要保護檔案的副檔名(以|分開),也就是說以這些為副檔名的檔案只有透過紅色的地址才可以訪問。綠色:如果不是透過紅色的地址訪問藍色這些為副檔名的檔案時就回重定向到綠色地址上。
這個方法有個好處是,不同的虛擬主機用不同的描述定義。
接下就是怎麼用 .htaccess 檔案來實現防盜鏈了。
首先要在空間上建兩個目錄(當然目錄名隨你),一個為 web 另一個為 down ,web 是用來放下載頁面的(或下載程式),down 當然就是放你提供的東東的啦,把 .htaccess 檔案的紅色部分改一下,改為http://你的域名/web。
藍色部分改為你要保護檔案的副檔名。
綠色部分改為http://你的域名/web。改後儲存
.htaccess 檔案把它上傳到 down 目錄。
首先給大家講一下防盜鏈原理: http標準協議中有專門的欄位記錄referer資料。
1.referer資料可以追溯上一個入站地址。
2.referer資料還可以追蹤包含顯示他的網頁地址。
因此所有防盜鏈方法都是基於這個Referer欄位 網上比較多的2種。
(1) 使用apache檔案FileMatch限制,在httpd.conf中增加 ( 其實也可以將把下面的語句存成一個.htaccess檔案),並放到你的網站的根目錄(就是www/html目錄),這樣子別人就沒有辦法盜連你的東西了
SetEnvIfNoCase Referer "^ http://yahoo.com/" local_ref=1 Order Allow,Deny Allow from env=local_ref Allow from 127.0.0.1
這種很方便禁止非允許訪問URL引用各種資原始檔 請大家注意,把第一句"^ http://xxxx.com/"改為你的網站,比如我的網站是: http://www. xinoso. com 我應該這麼寫的 "^ http://www. xinoso. com/"
(2) 使用rewrite,需要增apache mode_rewrite,支援.htaccess檔案目錄許可權限制,在虛擬主機根目錄增加.htaccess檔案,描述從定向,把非本地地址refer的圖片檔案都從定向到警告圖片或者警告網頁上。首先要確認你的伺服器或空間的伺服器解譯引擎為Apache2,還有支援.htaccess客戶設定檔案, 如果你有自己的伺服器就請先對./conf/httpd.conf 檔案做以下修改找到:#LoadModule rewrite_module modules/mod_rewrite.so 把前面的 # 給去丟 找到等一個 AllowOverride None 改為 AllowOverride All 重啟Apache2伺服器 接下就是做一個 .htaccess 檔案了,其 .htaccess 檔案內容為:RewriteEngine on RewriteCond %{HTTP_REFERER} !^ http://aaoo.net/.*$ [NC] RewriteCond %{HTTP_REFERER} !^ http://aaoo.net$ [NC] RewriteCond %{HTTP_REFERER} !^ http://www.aaoo.net/.*$ [NC] RewriteCond %{HTTP_REFERER} !^ http://www.aaoo.net$ [NC] RewriteRule .*.(jpg|jpeg|gif|png|bmp|rar|zip|exe)$ http://down.yoyo.com.ru/err.html [R,NC]
其中有色的地方都是要改為你的:紅色:就是改為你提供下載頁面的地址,也就是隻有透過這個地址才可以下載你所提供的東東。藍色:就是要保護檔案的副檔名(以|分開),也就是說以這些為副檔名的檔案只有透過紅色的地址才可以訪問。綠色:如果不是透過紅色的地址訪問藍色這些為副檔名的檔案時就回重定向到綠色地址上。
這個方法有個好處是,不同的虛擬主機用不同的描述定義。
接下就是怎麼用 .htaccess 檔案來實現防盜鏈了。
首先要在空間上建兩個目錄(當然目錄名隨你),一個為 web 另一個為 down ,web 是用來放下載頁面的(或下載程式),down 當然就是放你提供的東東的啦,把 .htaccess 檔案的紅色部分改一下,改為http://你的域名/web。
藍色部分改為你要保護檔案的副檔名。
綠色部分改為http://你的域名/web。改後儲存
.htaccess 檔案把它上傳到 down 目錄。