「潜在的に危険な Request.Path 値がクライアントから検出されました (*)」というエラーは、クライアントが送信した URL 内の制限された文字によって頻繁に発生します。 このガイドでは、このセキュリティ リスクを軽減するためのいくつかの効果的な戦略について概説します。
1 つのアプローチには、特定の特殊文字を許可するように web.config
ファイルを調整することが含まれます。 .NET 4.0 以降のバージョンの場合は、web.config
を次のように変更します。
<code class="language-xml"><system.web> <httpRuntime requestPathInvalidCharacters="<,>,%,&,:,\,?"></httpRuntime> </system.web></code>
これにより、アスタリスク (*) を除くすべての文字が許可されます。これは、ワイルドカード検索や動的 URL 構造を妨げる可能性がある一般的なデフォルト制限です。
または、HttpServerUtility.UrlEncode()
と HttpServerUtility.UrlDecode()
を使用して特殊文字を手動でエンコードおよびデコードすることもできます。 この方法は機能しますが、より労働集約的であり、綿密なコーディングが必要です。
クエリ文字列のないクリーンな URL を優先するアプリケーションの場合、ASP.NET ルーティングは優れたソリューションを提供します。 ルーティングは、URL をコントローラーとアクションにマップし、URL セグメントのエンコードとデコードを自動的に管理するため、手動介入の必要性が回避され、URL の明瞭さが向上します。
以上がASP.NET で「潜在的に危険な Request.Path Value」エラーを処理する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。