最近有一個項目服務器需要升級,主要是Web項目。
因為以前是只寫代碼,不管發布。所以在環境構築方面就出現自己的知識盲點。
盲點一:IIS的身份驗證的作用
盲點二:IIS的身份驗證和文件操作權限的關系(重點)
先來看看IIS幫助文檔中是如何說的
通過上面的描述,有些身份驗證還是不能很直觀理解其作用,沒關系現在,我們就從IIS配置開始來說明。
一、新建站點
1.1.新建應用程序池和添加應用程序
1.2.設置IIS身份驗證
這樣【匿名身份驗證】就配置完成了,這次主要說的是身份驗證,所以在站點配置那里就沒有詳細說明了。
但是這樣就滿足了,當然不能,隨后在配置【ASP.Net模擬】和【Forms身份驗證】就出現了意想不到的問題。
Ⅰ、ASP.NET模擬
設置應用程序池
設置站點身份驗證
預覽
錯誤:檢測到在集成的托管管道模式下不適用的ASP.NET設置
那我們就把集成=>經典
IIS7應用程序池集成和經典的區別
IIS7應用程序池有集成和經典兩種模式,根據微軟官方的介紹,
集成模式:服務器將使用 IIS 和 ASP.NET 的集成請求處理管道來處理請求。
經典模式:服務器會繼續通過 Aspnet_isapi.dll 路由托管代碼請求,其處理請求的方式就像應用程序在 IIS 6.0 中運行一樣。
所以理解集成和經典的區別,一個通俗的說法就是經典模式即繼續使用IIS6的模式,也就是以前的模式。
一個重要的說明,集成 .NET 模式下,應用程序不應在 <system.web>/<system.web> 配置節中指定 ASP.NET 模塊組件,而應使用 <system.webServer>/<system.webServer> 配置節來加載 ASP.NET 模塊組件。經典 .NET 模式 則是我們以前習慣的IIS 6 的方式,沒有上述限制。
建議使用集成模式。
那么問題來了,上面直接修改就不太好了。有沒有別的方法呢?有!!!
編輯ASP.NET模擬設置 指定特定用戶
預覽
What??這個是什么鬼,現在我也不知道,但是網上說把【匿名身份驗證】也啟動就可以了
這樣就好了,但是這個問題這樣解決對不對,我也不能確定,希望有知道的大神可以不吝賜教。
Ⅱ、Forms身份驗證
和上面是同樣的問題
網上沒有找到關於IIS身份驗證的比較詳細的說明,所以自己整理了一些比較淺顯,不喜勿噴,共同學習