ASP.NET的IIS和IIS express配置的老大難問題
首先是:IIS和IIS Express 不是同一個東西。 1)IIS是在Windows應用程式管理那裡配置安裝的,在我的電腦->配置->IIS裡面去管理主目錄,虛擬目錄,應用程式池。 2)IIS Express是安裝VS時隨同一起安裝的,用於Debug測試那些,方便開發,算是整合到一起的,但是也不是嚴格整合,IIS Express有自己的配置檔案,管理應用程式池那些的。
一段時間來遇到的問題: 1.無法連線到已配置的開發Web伺服器 使用的本地IIS Express.一般是開關機後然後會出現原來的網站用不了的情況 解決辦法: 事件檢視器->系統,然後看VS對應的時間訊息,會告訴一個埠號,然後在dos下使用下面的命令嘗試
netsh http add/delete iplisten ipaddres=[::]xxxx
注意裡面的add和delete,還有[]裡面的兩個冒號。重複操作後桌面右下角出現IIS Express伺服器。
2.未能找到CodeDom提供的程式型別"Microsoft.CodeDom…" 解決辦法: 工具->NuGet包管理器->程式包管理控制檯
Install-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform
出現安裝重複失敗,根據提示推測是framework版本為4.6.1導致的一些版本相容問題。 新建專案改Framework為3.5,測試執行時正常的。
隔日。重啟電腦後,出現問題。 失誤:開啟網站時開啟的目錄位置不對,【解決方案】->【web站名】,要開啟到這一層才是對的。
出現的問題及解決辦法 1.執行時報錯,說是有結點是重複定義的問題,還有說不支援檔案瀏覽這個意思的問題。 解決辦法 定義重複的問題就在web.config下把重複的那些行都註釋掉 不支援檔案瀏覽的問題就在 【我的文件】->【IIS Express】->【config】->【applicationhost.config】改程式池
<applicationDefaults applicationPool="Clr2ClassicAppPool" /> 或者 <applicationDefaults applicationPool="Clr4ClassicAppPool" />
然後還有
<directoryBrowse enabled="true" />
改為true。
然後就可以運行了。
系統自帶的IIS問題主要出現在程式池,還有就是設定的虛擬目錄到的問題,看到底是到了那一層。