關于ASP.NET 2和IIS 7.0發生不兼容變化
我們知道IIS 7.0的主要部分已被重新編寫,重寫的大部分都涉及到新的集成模式,該模式允許.NET模組可以在IIS 7.0管道的任何階段掛接進來。然而,當我們讓ASP.NET運行于這一集成模式時,就會曝露出一些無法兼容的改變。
IIS 7.0是由微軟公司提供的基于運行Microsoft Windows的互聯網基本服務。最初是Windows NT版本的可選包,隨后內置在Windows 2000、Windows XP Professional和Windows Server 2003一起發行,但在普遍使用的Windows XP Home版本上并沒有IIS。
傳統的HTTP Module和Handler必須在IIS 7.0web.config文件中重新進行配置;
不再支持BeginRequest和AuthenticateRequest階段中的身份模擬(Impersonation);
IIS 7.0應用再也不能同時使用Form和Windows身份證驗;
非標準Http客戶端在使用Windows身份驗證時可能會遇到問題,因為身份驗證的功能已移至內核中;
其它在某些特定時刻引發的認證問題,如當客戶端正在進行身份模擬時;
不再支持全局事件方法DefaultAuthentication_OnAuthenticate,事件WindowsAuthentication_OnAuthenticate也不再是每次都會被觸發;
Passport驗證已被徹底標識為過期,與以前所有的不兼容變化所不同的是,這一功能將徹底失效,即使以傳統模式運行IIS 7.0,Passport也不再有效。
關于ASP.NET 2和IIS 7.0發生不兼容變化,我們就講解到這里吧。
【編輯推薦】