IIS7 / ASP.NETでURLの最大長を増やすために従うことができるベストプラクティスは何ですか?
お知らせ下さい。
このサイトから: http://technet.microsoft.com/en-us/library/cc754791(v=ws.10).aspx
コマンド ラインを使用します: appcmd set config /section:requestfiltering/requestlimits.maxurl: unit
appcmd の使用方法について説明します: http://www.windowsnetworking.com/articles_tutorials/Configuring-IIS-7-command-line-Appcmdexe-Part1.html
AppCmd.exe コマンドはデフォルトの PATH にないため、その場所を知る必要があります。AppCmd.exe を実行するには、ディレクトリを %windir%\system32\inetsrv\ に変更するか、そのディレクトリを PATH 変数に追加する必要があります。デフォルト インストールの Windows 2008 サーバーでは、AppCmd.exe は C:\Windows\System32\inetsrv にありました。
しかし、注意してください。リクエスト URL が非常に大きくなった場合は、投稿メッセージを使用してパラメータを渡します
HTTP プロトコルの仕様では最大長は指定されていませんが、実際の制限は 2,083 文字で、URL のパス部分は 2,048 文字以下です。これらは、Microsoft Internet Explorer によって現在実施されている制限であり、現在でもすべてのユーザーの大多数によって使用されています。URL の長さの合理的な上限は、主要な Web ブラウザによって常に課されてきました。多くのフィールドを含むフォームを送信したい場合、そうしないと非常に長い URL が生成されるため、標準的な解決策は GET メソッドではなく POST メソッドを使用することです。
<form action="myscript.php" method="POST">
...
</form>
フォーム フィールドは、URL の一部としてではなく、HTTP トランザクション ヘッダーの一部として送信されます。
web.config の次の設定によって制限される場合があります。
<configuration>
<system.webServer>
<security>
<requestFiltering>
<requestLimits>
</requestLimits>
</requestFiltering>
</security>
</system.webServer>
</configuration>
参照: http://www.iis.net/configreference/system.webserver/security/requestfiltering/requestlimits#005