HTTP 錯誤 404.2 - Not Found 由於 Web 服務器上的“ISAPI 和 CGI 限制”列表設置,無法提供您請求的頁面。

將網站發佈到新的WEB服務器上時,網站無法打開並出現服務器錯誤:HTTP 錯誤 404.2 - Not Found 由於 Web 服務器上的“ISAPI 和 CGI 限制”列表設置,無法提供您請求的頁面。 此問題是由於IIS服務上沒有添加或者限制了ASP.NET對應的ISAPI服務器擴展造成的。

有關ISAPI服務器擴展的知識,可以查看windows server官網資料:在 IIS 7 中配置 ISAPI 和 CGI 限制

錯誤404.2頁面圖片

所以解決方法就是添加ASP.NET網站對應版本的ISAPI擴展。比如博主的網站是ASP.NET MVC5,所以需要使用v4.0.30319版本的aspnet_isapi.dll擴展。其實錯誤頁面也有提示具體的解決步驟:

解決方法截圖


下面將詳細的對這些步驟進行說明:

1.打開 IIS 管理器並定位到服務器級別。打開服務器上的Internet 信息服務(IIS)管理器,選擇IIS節點:

選擇IIS節點

2.在“功能”視圖中,雙擊“ISAPI 和 CGI 限制”以確認 Web 服務擴展被設置爲“允許”。

打開ISAPI和CGI限制

將WEB服務擴展設置爲允許

這裏要根據網站項目所使用的.NET Framework版本進行設置

3.如果該擴展不在列表中,請在“操作”窗格中單擊“添加”。

進行添加操作

4.在“添加 ISAPI 和 CGI 限制”對話框中,在“ISAPI”或“CGI 路徑”框中鍵入 .dll 或 .exe 文件的路徑,或者單擊“瀏覽”導航到相應文件的位置。

5.在“描述”框中,鍵入該限制的簡要說明。

添加ISAPI

6.(可選)選中“允許執行擴展路徑”以使限制可以自動運行。如果不選中此選項,則限制狀態將爲“不允許”,這是默認狀態。您可以在以後選中此選項並單擊“操作”窗格中的“允許”來允許該限制。

7.單擊“確定”。

注意: 請在確認您的 Web 服務器需要此 Web 服務擴展或 CGI 之後再將其添加到列表中。

  • 確認擴展的位置正確。
  • 確認擴展的 URL 在瀏覽器和 Web 服務器中均拼寫正確。
  • 創建跟蹤規則以跟蹤此 HTTP 狀態代碼的失敗的請求。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章