Browser handling of 413 Request Entity Too Large

Browser handling of 413 Request Entity Too Large

am 16.04.2008 02:01:52 von Ray Van Dolson

Hi all, running into this on an old Apache 2.0.46 installation
(actually httpd-2.0.46-70.ent from RHEL 3 Update 9).

When a user attempts to upload a large file it's exceeding the
LimitRequestBody size and Apache returns a 413 error. It appears
however that the browser (IE6 and FireFox 2.x in this case) do not
display the 413 message and instead show an error as if the connection
has been reset.

Upon examination of the packet stream I do see the 413 message reaching
the client, but after that the server immediately sends RST,ACK packets
to tell the client to quit trying to send data. I'm guessing this is
triggering the browser to just abort instead of showin the 413 error
page.

Is this something that could be handled differently by Apache or is the
browser to blame here? How have some of you worked around this issue?
I'd like the user to see an informative error message, not just the
connection reset message they see now.

Thanks in advance,
Ray

------------------------------------------------------------ ---------
The official User-To-User support forum of the Apache HTTP Server Project.
See for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
" from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org

Re: Browser handling of 413 Request Entity Too Large

am 16.04.2008 11:53:38 von wrowe

Ray Van Dolson wrote:
> Hi all, running into this on an old Apache 2.0.46 installation
> (actually httpd-2.0.46-70.ent from RHEL 3 Update 9).
>
> When a user attempts to upload a large file it's exceeding the
> LimitRequestBody size and Apache returns a 413 error. It appears
> however that the browser (IE6 and FireFox 2.x in this case) do not
> display the 413 message and instead show an error as if the connection
> has been reset.
>
> Upon examination of the packet stream I do see the 413 message reaching
> the client, but after that the server immediately sends RST,ACK packets
> to tell the client to quit trying to send data. I'm guessing this is
> triggering the browser to just abort instead of showin the 413 error
> page.
>
> Is this something that could be handled differently by Apache

yes - Apache could consume the entire message body. Issue is that you
likely limited request bodies for a good reason (e.g. traffic limiting)
so there is no desire to do this.

Could we perhaps consume and discard an additional LimitRequestBody amount
of traffic before our read-close? Probably it's worth a hack to find out
if this helps the client any.

------------------------------------------------------------ ---------
The official User-To-User support forum of the Apache HTTP Server Project.
See for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
" from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org

Re: Browser handling of 413 Request Entity Too Large

am 16.04.2008 16:49:04 von Ray Van Dolson

On Wed, Apr 16, 2008 at 10:53:38AM +0100, William A. Rowe, Jr. wrote:
> Ray Van Dolson wrote:
>> Hi all, running into this on an old Apache 2.0.46 installation
>> (actually httpd-2.0.46-70.ent from RHEL 3 Update 9).
>>
>> When a user attempts to upload a large file it's exceeding the
>> LimitRequestBody size and Apache returns a 413 error. It appears
>> however that the browser (IE6 and FireFox 2.x in this case) do not
>> display the 413 message and instead show an error as if the connection
>> has been reset.
>>
>> Upon examination of the packet stream I do see the 413 message reaching
>> the client, but after that the server immediately sends RST,ACK packets
>> to tell the client to quit trying to send data. I'm guessing this is
>> triggering the browser to just abort instead of showin the 413 error
>> page.
>>
>> Is this something that could be handled differently by Apache
>
> yes - Apache could consume the entire message body. Issue is that you
> likely limited request bodies for a good reason (e.g. traffic limiting)
> so there is no desire to do this.

Yeah, exactly. :) Well, it's clear the browser gets the 413 packet, I
just wish it would do something with it instead of acting on the RST's.

> Could we perhaps consume and discard an additional LimitRequestBody amount
> of traffic before our read-close? Probably it's worth a hack to find out
> if this helps the client any.

In my case this probably wouldn't as my LimitRequestBody is set to a
very large value. I'd like for the client to being attempting an
upload that is "too large" and for Apache to yell "Stop!" after it gets
the Content-Length header and then have the browser actually
acknowledge and display the error... would it work to have Apache
consume a "bit more" of the data before aborting the connection?
Probably not.

Ray

------------------------------------------------------------ ---------
The official User-To-User support forum of the Apache HTTP Server Project.
See for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
" from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org

Re: Browser handling of 413 Request Entity Too Large

am 17.04.2008 11:18:51 von Joe Orton

On Tue, Apr 15, 2008 at 05:01:52PM -0700, Ray Van Dolson wrote:
> Hi all, running into this on an old Apache 2.0.46 installation
> (actually httpd-2.0.46-70.ent from RHEL 3 Update 9).
>
> When a user attempts to upload a large file it's exceeding the
> LimitRequestBody size and Apache returns a 413 error. It appears
> however that the browser (IE6 and FireFox 2.x in this case) do not
> display the 413 message and instead show an error as if the connection
> has been reset.

This is the 2.0.x lingering close bug; it's fixed in 2.2.x.

https://issues.apache.org/bugzilla/show_bug.cgi?id=35292

Regards,

joe

------------------------------------------------------------ ---------
The official User-To-User support forum of the Apache HTTP Server Project.
See for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
" from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org