私の Azure Web ロールでは、約 3,000 万バイトを超える POST 要求の処理に問題があります。3,000 万バイトを超えるすべての要求を検出し、その結果を 404 に設定する IIS フィルターがあることは承知していますが、これらの 404 コードが IIS ログに表示されることを期待しています。
私の Web ロールのユーザーが、次のような状況に直面しています: 私の Web ロールの特定の URL への POST 要求は、約 3,000 万バイト未満で問題なく送信されます (IIS ログに表示されます) が、それよりも大きい POST 要求 (まったく同じ URL に) クライアントの HTTP 503 (サービスを利用できません) コードを生成し、IIS ログにそれらの要求が表示されません。
サンプルの長い POST のヘッダーを次に示します。
POST /mySpecificUrl?paramshere HTTP/1.1
User-Agent: Custom USer Agent
Content-Type: application/octet-stream
Proxy-Authorization: NTLM LongBase64StringHere
Host: my.hostname.here
Content-Length: content length here - about 32 megabytes
Expect: 100-continue
おそらくロードバランサーか何かがそれらのリクエストを傍受しているようで、私の役割に達していません。
現在、ユーザーは Fiddler を使用しており、コード 503 を取得すると、次のコンテンツが返されると主張しています。
Hello,
A communication error occurred: ""
The Web Server may be down, too busy, or experiencing other
problems preventing it from responding to requests.
You may wish to try again at a later time.
HTML として作成されます。このコンテンツに付随するヘッダーには、すべての応答に挿入されるカスタム ヘッダーが含まれていないため、要求が IIS に到達していないという別の証拠になります。
この動作の原因を特定するにはどうすればよいですか?また、それを制御するにはどうすればよいですか (たとえば、要求サイズのしきい値を変更するなど)?