基于ISAPI Rewrite軟件實現IIS圖片防盜鏈方法
2024-08-29 03:12:48
供稿:網友
下面的操作,可能引起用戶的反感,如果訪客想從你這個頁面,保存個圖片都是不能的,用戶體驗何在啊。
實施步驟:
1.下載比較出名的www.helicontech.com提供的ISAPI Rewrite軟件的免費版本(免費版本雖然有一些功能上的限制,但是做防盜鏈足夠了):
http://www.isapirewrite.com/download/isapi_rwl_x86_0072.msi
2.設置軟件安裝目錄的IIS_WGP組的讀寫權限(重要,如果不設置安裝完后你的網站就會直接Service Unavailable,無法訪問)。
設置方法:
假如你的安裝目錄是D:Program FilesHeliconISAPI_Rewrite(默認安裝目錄是Program FilesHeliconISAPI_Rewrite,我們可以先建立),右擊ISAPI_Rewrite,選擇“屬性”->“安全”->“添加”->“高級”->“立即查找”,會找到一項IIS_WGP,雙擊添加,確定即可。然后選中這個組,點擊“完全控制”,使其擁有讀寫權限。
3.安裝軟件(安裝過程中軟件會重啟iis),安裝目錄選擇上一步設置好權限的目錄,安裝完畢后打開控制面板里的Internet 信息服務,打開網站的屬性對話框里面有一項“isapi篩選器”,點擊“添加”,“篩選器名稱”自己隨便填寫一個好理解的名字就可以,“可執行文件”項點擊“瀏覽”,選擇剛才安裝的ISAPI_Rewrite的安裝目錄中的ISAPI_Rewrite.dll,確定即可。重啟iis。
4.修改安裝目錄中的httpd.ini文件(如果這個文件為“只讀”屬性,則去掉“只讀”之后再修改)
添加:
代碼如下:
RewriteCond Host: ^(.+)$
RewriteCond Referer: ^(?!http:///1.*).*$
RewriteCond Referer: ^(?!http://.*.baidu.com|.*.google.com|.*googlebot.com|.*.Vevb.com).*).*$
RewriteRule ^(?!(/logo.gif|/2_files/logo_tg.gif)).*.(?:gif|jpg|jpeg|png)$ /block.gif [I,O,N]
解釋說明:
a.上面規則第三行中的www.49028c.com為你網站的域名,請根據實際情況作出相應的修改,里面的baidu.com 和google.com是為了不阻止搜索引擎蜘蛛抓取圖片。
b.第四行中的/logo.gif和2_fies/logo_tg.gif為你的logo圖片的地址,目的是允許別人友情鏈接使用你的logo,如果不需要可以去掉"(?!(/logo.gif|/2_files/logo_tg.gif))"。后面的gif jpg等等可以自己根據實際情況修改。
另修改規則無需重啟iis,只需要修改httpd.ini配置文件即可。
以下是其它網友的相關文章
利用isapi_rewrite可以實現類似于Apache的偽靜態路徑,利用其檢查refer的功能我們還可以實現防盜鏈。該軟件可以在 http://www.helicontech.com/download/下載,是一個共享軟件,但是有一個LITE版本是免費的,基本上可以實現我們需要的功能。安裝的步驟我就不詳細說了,具體說說httpd.ini的設置。
首先,必須要保證httpd.ini有可寫權限,設置isapi_rewrite安裝文件夾everyone具有可修改權限后,去除該文件的只讀屬性。