PowerWeb 虛擬主機
客服中心 首頁 > 常見問題資料庫 > Linux 虛擬主機設定問題

常見問題類別     
 
   虛擬主機租用、繳費問題
   虛擬主機使用管理問題
   虛擬主機使用規定及違規處理方式
   虛擬主機郵件信箱設定及使用方式
   虛擬主機MySQL資料庫設定上傳方式
   網域名稱申請/使用問題
   Windows 虛擬主機設定問題
   Linux 虛擬主機設定問題
 
 

 

Linux Apache 伺服器下使用 .htaccess 實現圖片防盜鏈

.htaccess 文件將影響其所在的目錄及其子目錄,所以如果我們要保護的內容(此處以防止圖片盜鍊為例,即圖片)位於網站內多個目錄下,可以考慮將其 .htaccess 放在根目錄下。

而如果圖片有單獨的子目錄如  "/images/",則只需將其放置在該目錄下(當然也可以放到根目錄中)。

需要注意的是,如果通過 FTP 方式將創建好的 .htaccess 上傳到服務器上,傳輸模式應為ASCII而非Binary。上傳到服務器後,應將其屬性通過CHMOD修改為644 或“RW-R–R–”,這樣,可以保證伺服器能夠使用同時無法通過瀏覽器修改,當然,.htaccess 的可讀屬性也存在一定的風險:攻擊者可通過它找出您要保護的對像或認證文件位置——解決辦法是將認證文件 .htpasswd 放到網站根目錄之外,這樣,便無法通過網絡找到它了。

使用.htaccess禁止盜鏈

通過 .htaccess 來防止網站的圖片、壓縮文件、或視頻等非 HTML 文件被盜鏈的方法相當簡單,通過在該文件中加入幾句命令即可保護我們寶貴的頻寬。例如設置如下:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$ [NC]
RewriteCond %{HTTP_REFERER} !google.com.tw [NC]
RewriteCond %{HTTP_REFERER} !yahoo.com [NC]
RewriteRule .*\.(gif|jpg)$ http://testdomain.com/no.png [R,NC,L]


簡單的解釋一下上述描述:

1、RewriteCond %{HTTP_REFERER} !^$ [NC]

允許空“HTTP_REFERER”的訪問,即允許用戶在瀏覽器地址欄中直接輸入圖片地址時圖片文件的顯示。一般而言,這是可選的,不過,建議這麼設置,如果強迫必須具有“HTTP_REFERER”才能訪問,可能會帶來某些問題,比如說在用戶通過代理服務器訪問時。

2、RewriteCond %{HTTP_REFERER} !google.com.tw [NC]

設置允許訪問的HTTP來源,包括我們的站點自身、Google、Yahoo、.... 等。

3、RewriteRule .*\.(gif|jpg|png)$ http://testdomain.com/no.png [R,NC,L]


定義被盜鏈時替代的圖片,讓所有盜鏈jpg、gif、png 等文件的網頁,顯示根目錄下的no.png 文件。注意:替換顯示的圖片不要放在設置防盜鏈的目錄中,並且該圖片文件體積越小越好。當然你也可以不設置替換圖片,而是使用下面的語句即可:

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

4、說明一下其中的R、NC 和 L

R 就是轉向的意思
NC 指的是不區分大小寫
L 的作用是指明本次轉向到此結束,後續的轉向不受先前判斷語句的影響

5、防止盜鏈的文件類型

上例中是gif、jpg、png,而根據需要,可更改或添加其他文件類型,如rar、mov等,不同文件擴展名間使用“|”分割。
這樣的話,就可以基本做到簡單的防止被盜鏈情況的發生,而且可以盡最大可能的減少虛擬主機流量的無畏消耗。

 

 

   回上一頁   
 
PowerWeb 虛擬主機 / 網域名稱服務中心
 





POWERWEB 虛擬主機網頁空間 © 2004~2017 KangYu Inc. All Rights Reserved. 諮詢專線 0809-058-688 服務時間 週一~週五 09:00 ~ 18:00‧ 傳真電話 (02) 3322-9019
線上信用卡授權