The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

介紹好用元件:Cache Manager plug-in for ASP.NET

網站發展到一定程度一定會需要實做快取(Cache)機制,但是當 Cache 用多了話,還真的不容易管理,之前寫過一篇關於【如何將目前的 Cache 物件全部清空】,當我想瀏覽目前 Cache 的內容時,就會想到利用 Cache Manager plug-in for ASP.NET 幫我瀏覽或管理所有快取項目。

Cache Manager plug-in for ASP.NET 是利用 HttpHandler 實做,並封裝成一個 DLL 組件,部署到 bin 目錄下並在 web.config 中註冊就可以開始使用,使用時的畫面如下:

Cache Manager plug-in for ASP.NET : Screenshot

安裝只有 2 個步驟,如下:

1. 將解壓縮後的 AspAlliance.CacheManager.dll 放到 bin\ 目錄下

2. 加一條 HttpHandlers 設定到 web.config 中

  • IIS6 下,需在 <system.web> 下的 <httpHandlers> 下加入以下這行:
<add verb="*" path="CacheManager.axd" 
     type="AspAlliance.CacheManager.CacheManagerPageFactory,AspAlliance.CacheManager" />
  • IIS7 下,需在 <system.webServer> 下的 <handlers> 下加入以下這行:
<add name="AspAllianceCacheManager" verb="*" path="CacheManager.axd"
     type="AspAlliance.CacheManager.CacheManagerPageFactory,AspAlliance.CacheManager" />

第 2 步驟的 path 可以讓你自己定義,只要副檔名名為 *.axd 即可。不改的話,你就可以直接用瀏覽器連接 Cache Manager 管理介面,如下範例:

http://localhost/CacheManager.axd

基於安全理由,建議取一個比較難「猜」的路徑名稱,避免機密資訊外洩,不過我個人建議這樣的元件僅用在「開發環境」就好,網站上線時記得要拿掉!

除此之外,你也可以在 web.config 設定 <location> 限制該 HttpHandler 的存取,例如:

<location path="CacheManager.axd">
  <system.web>
    <authorization>
      <deny users="?"/>
    </authorization>
   </system.web>
 </location>

剩下的就讓各位安裝起來自己玩玩啦。

相關連結