在服務器上處理請求時出現未知錯誤。服務器返回的狀態碼為500


操作方法:

為頁面的ScriptManager控件添加EnablePartialRendering="false"的屬性  此方法不是直接解決或規避問題的,是為了將詳細的頁面錯誤顯示出來,以便找到需要修正

的地方,個人覺得這才是正道嘛,不能躲避錯誤,而應盡量不讓錯誤發生。 ---》 找出錯誤  -- 》 修改。

   <asp:ScriptManager ID="ScriptManager" runat="server" EnablePartialRendering="false">
    </asp:ScriptManager>

 彈出如下錯誤提示:

從客戶端(originalTile_Service="...:值班長

<warningType>家客</war...")中檢測到有潛在危險的 Request.Form 值。

 

從 .Net Framework 4.0 開始,asp.net開始強制檢測

Request參數安全,而我們可以通過修改 Web.config 來恢復 2.0 版本的模式。

方法如下:

修改Web.config,增加requestValidationMode="2.0"屬性值

 <system.web>   <httpRuntime requestValidationMode="2.0" />  

 <pages validateRequest="false"></pages>  </system.web>

4.0 中多了一個 requestValidationMode,這是什么意思呢?

requestValidationMode 有兩個值:

•2.0僅對網頁啟用請求驗證。是啟用還是關閉取決於 validateRequest。

•4.0 默認值。任何 HTTP 請求都會啟用請求驗證,也就是說不光是網頁,還包括 Cookie 等

。此時強制啟用,不管 validateRequest 為何值。

由於 requestValidationMode="4.0" 是強制啟用,所以我們會發現在 .NET Framework 4.0

中僅靠設置 validateRequest 是關閉不了請求驗證的,還得將 requestValidationMode 設置

為 2.0。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM