IHttpModule设置了不起作用(转)

来源:互联网 发布:tomcat连接mysql测试 编辑:程序博客网 时间:2024/06/06 10:40

昨天寫了一個類別引用IHttpModule的介面, 因為我們PM要記錄使用者點閱每個功能的次數,

然後我又不想每個link都改...所以想說可以試試看IHttpModule,

因為自己的筆電安裝的是win7系統, 正式主機上面安裝的是window server 2008系統,

win7的IIS版本是7.5,  應用程式集區的管線模式是整合式

win server 2008的IIS版本是7.0. 應用程式集區的管線模式是傳統

因為我的網站專案是掛在IIS7.5裡面的, web.config內有兩種標籤

1<system.web>
2<httpmodules>
3</httpmodules>
4</system.web>
5 
6<system.webserver>
7<modules>
8</modules>
9</system.webserver>

我在<system.webServer></system.webServer>裡面的<modules></modules>裡面加上引用到IHttpModule的類別, ex. test.cs

1<add name="test.cs" type="test"></add>

放在這個位置, test.cs會跑, 若放到<system.web></system.web>裡面的<httpModules></httpModules>則沒有作用; 反而在win server 2008的IIS7上面的web.config裡面設定在<system.web></system.web>裡面的<httpModules></httpModules>會跑, 放在<system.webServer></system.webServer>裡面的<modules></modules>則沒有作用.

為什麼IIS7跟IIS7.5會有這個差別, 我在想到底是為什麼, 難道真的是因為IIS版本的關係?

後來上網找了相關的文章, 發現好像是我在IIS7.5是將網站用到的應用程式集區管線設定成整合性, 而win server 2008上的IIS7版本則是將應用程式集區管線設定成傳統.

若我將IIS7版本的應用程式集區管線也設定成整合性的話, 也許也會變成是在<system.webServer></system.webServer>裡面的<modules></modules>區塊設定了, 但我不敢動手, 因為我怕有其他會被影響到,,,XD, 所以也只是推論而已.


1 0