[ASP.NET] 長いクエリー文字列を受け取るには maxQueryString と maxQueryStringLength を設定する
IIS, ASP.NET で長いクエリー文字列を受け取るには、web.config に maxQueryString と maxQueryStringLength のふたつの設定が必要です。
開発している リツイート直後のツイートを表示するやつ では、URL に長いパラメーターが指定される場合があるのですが、エラーが発生するので調べると、maxQueryStringLength が足りていませんでした。
maxQueryString
IIS に関する設定で「要求の限度に基づくフィルター処理」として、クエリー文字列の長さの上限を requestLimits **maxQueryString ** 属性で指定します。指定していない場合、「HTTP Error 404.15 – Not Found」が発生します。
https://gist.github.com/jz5/ca627c0719a1e426393a
maxQueryStringLength
ASP.NET 4 以降に関する設定で、使用可能な URL 範囲の拡大 するためのオプションがあります。httpRuntime maxQueryStringLength 属性で指定します。
https://gist.github.com/jz5/3d6c5812e4d6fa24b8a7
Internet Explorer の URL 文字数制限
Internet Explorer では URL に最大 2,083 文字が使用可能 です。長いクエリー文字列を受け取るには、IE 以外のブラウザーを使いましょう。