引起這個的原因大概是現安裝了.Net Framework後裝的IIS導致.Net沒有在IIS裡註冊。
在網上找了很久都是說從.net命令列工具裡運行aspnet_regIIS /i就可以了(或者在類似下面的目錄:C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe -i),但是自己試了很多次都不行,後來發現還是要先卸載再安裝,重新建立為應用程式才行,具體如下:
從.net命令列工具裡運行 aspnet_regIIS /u 卸載,再aspnet_regIIS /i安裝
然後重啟IIS ,刪除“預設應用程式”,然後將網站重新建立為應用程式。
另外,還有可能是ASPNET賬戶沒有IIS所指定伺服器目錄的許可權。在資源管理員中找到“工具-檔案夾選項-查看-使用簡單檔案夾共用(推薦)”,把前面的勾去掉,然後在伺服器指定目錄上點右鍵,屬性-安全-添加-進階-立即尋找,把ASPNET這個賬戶添加進去,給它指定完全訪問的許可權。這樣做了以後就會發現沒有了那個錯誤,不過如果訪問資料庫可能有會提示ASPNET這個賬戶沒有許可權訪問資料庫。這個提示就清楚多了,把該賬戶在資料庫中加入相應的許可權就可以了。
解決方案一 重新註冊.Net 2.0:
C:WINDOWSMicrosoft.NetFrameworkv2.0.50727as.Net_regiis.exe –i
解決方案二 建立應用程式集區:
建立應用程式集區的步驟
1. 單擊“開始”,指向“程式”,然後單擊“控制台”。
2. 雙擊“管理工具”,然後雙擊“Inte.Net 資訊服務 (IIS)”。
3. 按右鍵“應用程式集區”,指向“建立”,然後單擊“應用程式集區”。
4. 在“應用程式集區 ID”文字框中鍵入 AppPool1。
5. 單擊“確定”。
將應用程式分配到應用程式集區
1. 單擊“開始”,指向“程式”,然後單擊“控制台”。
2. 雙擊“管理工具”,然後雙擊“Inte.Net 資訊服務 (IIS)”。
3. 雙擊“Web 網站”。
4. 雙擊“預設 Web 網站”。
5. 按右鍵“DebugApp1”,然後單擊“屬性”。
6. 在“主目錄”標籤中的“應用程式集區”列表框中選擇“AppPool1”,然後單擊“確定”。
解決方案三,修改網站目錄所在檔案夾的存取權限:
找到當前網站目錄->右鍵->屬性->安全->添加->進階->立即尋找->選擇 Users 使用者 ->確定->確定
解決辦法:
1、建立一個應用程式集區,點屬性,標識,選擇應用程式集區的安全性帳戶,本地系統,OK!
2、WEB檔案夾屬性中的許可權添加NetWork Service帳號許可權。
至此,網站可以正常運行.NET程式了