ISAPI Rewrite實現iis防盜鏈

2020-12-13 站長之家

為了實現圖片防盜鏈,根據網絡上搜集的資料加上自己的實踐,終於實現了iis下的圖片防盜鏈功能。伺服器系統windows 2003 server,參考資料來源:

https://www.hua-lin.net/blog/isapi_rewrite-stop-leeching-39

實施步驟:

1.下載比較出名的www.helicontech.com提供的ISAPI Rewrite軟體的免費版本(免費版本雖然有一些功能上的限制,但是做防盜鏈足夠了):
https://www.isapirewrite.com/download/isapi_rwl_x86_0072.msi

2.設置軟體安裝目錄的IIS_WGP組的讀寫權限(重要,如果不設置安裝完後你的網站就會直接Service Unavailable,無法訪問)。
設置方法:
假如你的安裝目錄是D:\Program Files\Helicon\ISAPI_Rewrite(默認安裝目錄是\Program Files\Helicon\ISAPI_Rewrite,我們可以先建立),右擊ISAPI_Rewrite,選擇「屬性」->「安全」->「添加」->「高級」->「立即查找」,會找到一項IIS_WGP,雙擊添加,確定即可。然後選中這個組,點擊「完全控制」,使其擁有讀寫權限。

3.安裝軟體(安裝過程中軟體會重啟iis),安裝目錄選擇上一步設置好權限的目錄,安裝完畢後打開控制面板裡的Internet 信息服務,打開網站的屬性對話框裡面有一項「isapi篩選器」,點擊「添加」,「篩選器名稱」自己隨便填寫一個好理解的名字就可以,「可執行文件」項點擊「瀏覽」,選擇剛才安裝的ISAPI_Rewrite的安裝目錄中的ISAPI_Rewrite.dll,確定即可。重啟iis。


4.修改安裝目錄中的httpd.ini文件(如果這個文件為「只讀」屬性,則去掉「只讀」之後再修改)
添加:

RewriteCond Host: ^(.+)$
RewriteCond Referer: ^(?!https://\\1.*).*$
RewriteCond Referer: ^(?!https://.*\.baidu\.com|.*\.google\.com|.*googlebot\.com|.*\.abc\.net).*).*$
RewriteRule ^(?!(/logo\.gif|/2_files/logo_tg\.gif)).*\.(?:gif|jpg|jpeg|png)$ /block.gif [I,O,N]

解釋說明:
a.上面規則第三行中的www.abc.net為你網站的域名,請根據實際情況作出相應的修改,裡面的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配置文件即可。

相關焦點

  • nginx配置基礎之rewrite
    Nginx Rewrite規則相關指令Nginx Rewrite規則相關指令有if、rewrite、set、return、break等,其中rewrite是最關鍵的指令。If 空格 (條件) {    重寫模式}rewrite的核心還是正則表達式,其他的只要知道其語法規則既可規則參考~ 為區分大小寫匹配~* 為不區分大小寫匹配!
  • Nginx 配置 location 及 rewrite 規則寫法總結
    Rewrite規則rewrite功能就是,使用nginx提供的全局變量或自己設置的變量,結合正則表達式和標誌位實現url重寫以及重定向。rewrite只能放在server{},location{},if{}中,並且只能對域名後邊的除去傳遞的參數外的字符串起作用,例如 http:重寫。
  • Nginx基礎——Rewrite規則
    Rewrite規則學習記錄rewrite是nginx一個特別重要的指令,該指令可以使用正則表達式改寫URI。
  • Win2008應用之IIS 7中ISAPI篩選器配置
    具體實現步驟如下:  1.  打開 IIS 管理器,然後導航至您要管理的級別。  2.  在"功能視圖"的"server主頁"或"site 主頁"頁上,雙擊"ISAPI 篩選器"。  3.  在"ISAPI 篩選器"頁的"操作"窗格中,單擊"添加"。  4.
  • windows伺服器使用nginx來部署web環境,棄用iis支持php的方法
    Windows上使用nginx作為web伺服器時,我們的php環境就需要藉助第三方的插件來啟動,在windows伺服器上nginx現在還沒有啟動php的功能,nginx不像iis那樣只要iis和php綁定成功,iis啟動時php也就會跟著啟動,nginx現在支持單獨在windows系統上獨立啟動,但是還不支持啟動php,我們今天的課題就是在Windows系統上獨立啟動
  • IIS開啟GZIP壓縮效率對比及部署方法
    在編輯MetaBase.xml前需要停止IIS,可以使用 net stop iisadmin2. 修改完成後開啟iisadmin服務,並執行iisreset命令關於SEO的測試壓縮是否對SEO有影響,經測試,開啟後仍然可以被很好的收錄。關於對SEO影響的研究文章,還可以參考下面的幾篇文章。具體的效率問題,將繼續監控以作研究。
  • 沒有ISAPI Rewrite FULL照樣玩多站點偽靜態
  • Clang Rewrite視角OC類結構分析與部分常見考點
    簡介本文利用clang -rewrite-objc探索了類、元類中存儲的信息;類、元類、根源類的關係。最後,通過 屬性重排 展示了蘋果對成員變量的布局優化,再次重申 《WWDC20 iOS14 Runtime優化》 中蘋果反覆提到的觀點:在開發中,請使用運行時API,而不是指針偏移、mask等更底層的方式獲取信息。
  • IIS常見問題及解答以及故障分析
    因此,ISAPI篩選器有著非常強大的功能,能用來實現客戶日誌、驗證或更改數據流。對IIS 5.0來說,在ISAPI篩選器中實現的特性包括數據壓縮、摘要驗證和URLScan。 因 為篩選器在IIS中扮演了一個如此重要的角色,所以它們總是作為Inetinfo部分運行在過程內。因此,正確的ISAPI篩選器結構對伺服器的正常運行 是必備的。
  • 如何實現redis主從複製?
    主從複製,主要優勢在於實現了數據備份(主機和從機數據同步一致)、讀寫分離(主機主要負責寫入數據,從機讀數據,在讀大於寫的項目中提高了性能)。最後也為後續集成哨兵機制和集群的實現提供了依據。,本質上是同時啟動幾個redis實例來實現。
  • C#基於WebOffice實現在線文檔編輯
    2、在伺服器指定盤建立office存儲文件(小編本地C盤建立weboffice文件夾,然後搭建iis訪問,相當於伺服器訪問)首先在官網下載需要的語言,小編下載的是C#的。下載路徑:http://www.officectrl.com/weboffice_demo.html
  • 完全理解 redux(從零實現一個 redux)
    我們需要考慮如何實現擴展性很強的多中間件合作模式。我們通過擴展 createStore 來實現!(reducer, initState, rewriteCreateStoreFunc) => {    /*如果有 rewriteCreateStoreFunc,那就採用新的 createStore */    if(rewriteCreateStoreFunc){       const newCreateStore =  rewriteCreateStoreFunc
  • IIS負載均衡-Application Request Route詳解第一篇: ARR介紹
    我們就進一步的看看ARR的一些特徵:基於HTTP請求,做出的請求路由的決定與硬體的負載均衡不同(在OSI模型的IP層來決定請求的路由方式),ARR是基於應用層來進行負載均衡的,因為在應用層可用的信息更多(其實談到這裡,是很有必要把負載均衡的原理講清楚的,但是,因為本系列主要是講述ARR,所以,對已一些底層原理性的概念,不會做過多的涉及,以後計劃為朋友們系統的講述負載均衡的原理及其實現
  • 華為P30系列實現鏡頭全平不凸起,宣傳語:改變攝影規則
    動圖裡的手機從側面看是一條線,實現了攝像頭不凸起。不過官方沒有明確表明華為P30系列是否都採用了不凸起設計,可能只是華為P30 Pro。動圖中CLOSE----SUPER CLOSE,意思是超強的變焦拍攝能力,最後從畫面的slogan中還有一句rewrite the rules of photography,意思是改變攝影的規則。