這裏收集一些了ASP.NET常見錯誤及解決方法供平時調試ASP.NET的WEB網站出錯時參閱,內容整理自互聯網及平時學習工作中,將不斷更新。
在ASP.NET出現錯誤時,應該先檢查ASP.NET環境是否正確搭建,比如以下幾個方面:
1、是否安裝相應版本的.NET Framework程序,並打好了補丁。
2、IIS是否安裝運行正常,站點路徑及ASP.NET版本是否配置正確。
3、在IIS WEB服務擴展中,是否允許了ASP.NET擴展。
4、是否有安全防護軟件禁止向Windows和Temp文件夾寫入文件,如McAfee。
5、運行ASP.NET探針,查看是否正確,並能適應當前Web需求的環境。
ASP.NET常見錯誤及解決方法
1)錯誤:未找到路徑“C:/”的一部分。
說明:
執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以瞭解有關該錯誤以及代碼中導致錯誤的出處的詳細信息。
異常詳細信息:System.IO.DirectoryNotFoundException:未找到路徑“C:/”的一部分。
解決:
在C盤加上Users組讀取權限就可以訪問了,但出於服務器安全問題,應該把UserS組權限去掉了,相繼的問題以不同的錯誤方式顯示出來了,如下面講到的問題,然後再一一解決。
2)錯誤:
頁面彈出登錄窗口點取消後出現:HTTP 錯誤 401.3 - 未經授權:訪問由於 ACL 對所請求資源的設置被拒絕。
或者出現 HTTP 401.1錯誤。
解決:
先要檢查你的“身份驗證和訪問控制”中“對匿名使用下列Windows用戶賬號”中的用戶密碼是否正確,還有檢查你的網站:
右鍵單擊-權限中有沒有加入此應用。
第一種方法試過都還是這的話,就看文件夾的權限設置了
在Windows上加上Users權即可。
3)錯誤:
如果瀏覽到你整個網站出現亂碼。
解決:
那應該在C盤Windows加上users組的讀取權限即可。
4)錯誤:
編譯錯誤
說明:在編譯向該請求提供服務所需資源的過程中出現錯誤。請檢查下列特定錯誤詳細信息並適當地修改源代碼。
編譯器錯誤信息:CS0016:未能寫入輸出文件“c:/windows/Microsoft.NET/work/v1.1.4322/Temporary ASP.NET Files/root/345513e7/86f1794a/fvmzvzp7.dll”--“拒絕訪問。”
解決:
應該在C盤Windows下的Temp加上Users組的讀、寫、修改的權限。
5)錯誤:
編譯錯誤
說明:在編譯向該請求提供服務所需資源的過程中出現錯誤。請檢查下列特定錯誤詳細信息並適當地修改源代碼。
編譯器錯誤信息:編譯器失敗,錯誤代碼爲 128。
解決:
應該在C盤Windows下的System32加上Users組的讀的權限。
6)錯誤:
運行時錯誤
說明:服務器上出現應用程序錯誤。此應用程序的當前自定義錯誤設置禁止遠程查看應用程序錯誤的詳細信息(出於安全原因)。但可以通過在本地服務器計算機上運行的瀏覽器查看。
詳細信息:若要使他人能夠在遠程計算機上查看此特定錯誤信息的詳細信息,請在位於當前 Web 應用程序根目錄下的“web.config”配置文件中創建一個 <customErrors> 標記。然後應將此 <customErrors> 標記的“mode”屬性設置爲“Off”。
<!-- Web.Config 配置文件 -->
<configuration>
<system.web>
<customErrors mode="Off" />
</system.web>
</configuration>
註釋:通過修改應用程序的 <customErrors> 配置標記的“defaultRedirect”屬性,使之指向自定義錯誤頁的 URL,可以用自定義錯誤頁替換所看到的當前錯誤頁。
<!-- Web.Config 配置文件 -->
<configuration>
<system.web>
<customErrors mode="RemoteOnly" defaultRedirect="mypage.html" />
</system.web>
</configuration>
解決:
在所在站點右鍵點擊-權限,加上IIS_WPG組的讀權限即可。
如果你刪除了IIS,重新安裝.那就要重新註冊ASP.NET.方法如下:
1、打開CMD,進入 C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727
2、輸入 aspnet_regiis.exe -i
3、如果接着還出現“未能創建 Mutex”的問題。執行以下步驟:
3.1、打開 開始菜單 - 點擊運行 - 輸入CMD - 運用CD命令進入C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727目錄
3.2、執行C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727>aspnet_regiis.exe –i 進行安裝
3.3、執行C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727>aspnet_regiis -ga administrator 開始爲 administrator 授予權限,使其可以訪問 IIS 元數據庫和 ASP.NET 使用的其他目錄。
7)錯誤:IIS爲何停止了就不能啓動,而且重新啓動電腦也不行。併發生意外錯誤0x8ffe2704。
解決:
1、查看80端口有沒有被其它的程序使用。如果有其它的程序在使用,那就爲這個程序另配一個端口。把80端口還給IIS使用。
2、檢查在IIS啓動之前是否先啓動了迅雷等下載具,如果有就要關掉迅雷等下載具並重新啓動IIS。