Asp.net
ASP.NET MVC 5 Web.config:“FormsAuthenticationModule”或“FormsAuthentication”
好的,所以這沒什麼大不了的,但它困擾著我,我不能放手。
所以我將 MVC 5.1 與 .NET 4.5.1 和 OWIN 身份驗證一起使用。因此,當您創建一個新的 MVC 5 項目時,以下內容會自動添加到 Web.config 以擺脫表單身份驗證 http 模組,因為使用 OWIN 中間件時不再需要它:
<system.webServer> <modules> <remove name="FormsAuthenticationModule" /> </modules> </system.webServer>現在,由於我們正在刪除該模組,這意味著它是以前添加的,所以這裡是註冊此 http 模組的條目
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\web.config:<httpModules> <add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" /> </httpModules>這是
C:\Windows\System32\inetsrv\config\applicationHost.configIIS 8.5 中的條目,它告訴我的應用程序使用該模組:<system.webServer> <modules> <add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" preCondition="managedHandler" /> </modules> </system.webServer>因此,在應用程序級別自動添加到我的 Web 配置的內容具有“FormsAuthenticationModule”的名稱屬性,而兩個伺服器級別/asp.net 級別的配置文件中的條目使用名稱屬性“FormsAuthentication”。那麼這裡發生了什麼?在我看來,模組不會被刪除,因為 name 屬性不匹配。我只是認為這是一個錯字,但在網上搜尋後,每個人似乎都在應用程序 web.config 中使用“FormsAuthenticationModule”。這是最新版本的 asp.net / iis 的最新變化還是我遺漏了什麼?
你是對的 - 這是模板中的一個錯字。