Iis

有沒有辦法在 IIS 7.5 的應用程序(非站點)級別禁用 ISAPI 過濾器?

  • January 30, 2015

我們有許多應用程序在單個 IIS 站點下執行,但由於它使用的是舊庫,因此需要在 32 位應用程序池中執行。

Calling LoadLibraryEx on ISAPI filter但是,我們目前不能這樣做,因為在父站點上設置了兩個 64 位 ISAPI 過濾器,這意味著當您嘗試訪問在 32 位應用程序池中執行的應用程序時,IIS 會出現錯誤。

我找到了<isapiFilters>配置元素(參考),但是將其添加到應用程序的 web.config 中,其中<remove>包含我要禁用的每個過濾器的元素並沒有做任何事情:

<isapiFilters>
   <remove name="FILTER_1_NAME" />
   <remove name="FILTER_2_NAME" />
</isapiFilters>

我真的不想為此站點下執行的所有應用程序禁用這些過濾器,只是為了這個。

有沒有辦法在應用程序級別做到這一點?

不,根據文件,isapiFilters 只能在伺服器或站點級別定義。

您可以將 32 位應用程序放入其自己的站點,然後對來自主站點的每個請求進行 URL 重寫。但這可能會導致更多問題/工作,具體取決於您的應用程序。

引用自:https://serverfault.com/questions/663672