簡易作法
在Server上設定Referer防堵,
很多人知道要在.htaccess上動手腳,設定
SetEnvIfNoCase Referer "^http://([^/]*\.)?your.server.name/" local_referrer=1
Order Allow,Deny
Allow from env=local_referrer
就可以根據Referer防止jpg等檔案被盜連
[編輯] 說明
設定 Apache mod_rewrite 來防止mod_rewrite on
開啟 .htaccess 權限
1.開啟 httpd.conf
2.搜尋 AllowOverride None,或是只搜尋 AllowOverride 關鍵字
3. 把 None 改成 ALL,表示完全接受 .htaccess 裏的所有權限設定,然後存檔
增加以下內容的 .htaccess 檔,放在網站目錄下即可。
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://lym.fyman.idv.tw(.*) [NC]
RewriteRule \.(jpg|jpeg|gif|css|swf|png|bmp|rar|zip|exe)$ - [F]
第一行為開啟 RewriteEngine,二三行設定允許的連線
第四行則是從其他地方連進來且是那些檔名的,看到403錯誤訊息,也可以改成顯示指定的圖片。
或是在網站目錄下的 .htaccess 檔中、或 httpd.conf 檔中加入下列內容即可:
程式碼
SetEnvIfNoCase Referer "^http://yourdomain.com/" local_referrer=1
Order Allow,Deny
Allow from env=local_referrer
記得把 http://yourdomain.com/ 這一段改成自己的網站 URL
[編輯] 從設定檔下手
注意!本教學只針對apache程式架設的主機有效!
請修改 apache 中的 httpd.conf
請找到下列文字:
Options All
AllowOverride All
修改為:
Options FollowSymLinks Includes
AllowOverride AuthConfig Limit
Order allow,deny
Allow from all
SetEnvIfNoCase Referer \"^http://www1.xxx.com/ (http://www1.xxx.com/)\" local_ref=1
SetEnvIfNoCase Referer \"^http://www2.xxx.com/ (http://www2.xxx.com/)\" local_ref=1
Order Allow,Deny
Allow from env=local_ref
其中的http://www1.xxx.com/為您欲設限的網址,可增加減少...
再其中的(gif|jpg|jpeg|JPG|GIF|JPEG)內為欲設限的檔案副檔名,您可自行修改!
但要記得, 如果你網頁中有使用其他程式來呼叫絕對路徑的圖片時,
請一律修改成相對路徑, 否則那些圖片也會變成叉燒包的.
|