"Connection closed by remote server" error in Opera


B

BGS

I have a web site (www.on-the-matrix.com) that displays photos in a "slide
show" format on ASPX pages that run in an inline frame on an ASP page (or in
a separate pop-up window). The ASPX pages use a hidden form to transmit
information back to the server so it will know which is the next photo to
load. All of this works as intended in modern versions of Internet
Explorer, Netscape and Mozilla.

With Opera, however, users receive a "Connection closed by remote server"
error. This error occurs even in Opera 7.11, the most recent version.

From the folks at Opera, I received the explanation listed below (which,
frankly, is over my head).

My question to the group is: Is there some way through ASP.NET, or through
some META tag, that I can solve this problem? (I am on a shared hosting
service so I do not have direct access to server settings.)

All help most appreciated,
Bruce


OPERA'S EXPLANATION OF "CONNECTION CLOSED" ERROR:

The reason for this problem is that the serverside script that handles the
request is submitted as a form and returns a malformed HTTP chunked encoding
response.

What the server sent in the case I looked at was:

------------start of response
23c6<CRLF>
<0x23c6 bytes of data (9158 bytes>
<CRLF>
<CRLF>
------------end of response/connection shut down

What Opera expected was this:

------------start of response
23c6<CRLF>
<0x23c6 bytes of data (9158 bytes>
<CRLF>
0<CRLF>
<CRLF>
------------end of response/connection shut down

Please notice the line with the zero length.

For more information about chunked encoding see RFC 2616, sec. 3.6.1
http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.6.1 .

In this case Opera believes that there was a transmission error, which
caused the response to be truncated.

Under normal circumstances Opera would have resubmitted the request in order
to verify the length, or get the rest of the data. As this request is
submitted as a forms request, however, that approach is not possible. There
could be undesirable side effects when a form is submitted twice (Oh, you
didn't order those two cars? Then why are there two orders from you in our
system?).

Because Opera did not receive the end of body indication, Opera has to
assume that it didn't receive the entire document, and as it cannot verify
the length by refetching it informs the user that there was a problem and
that the result may not be what the user expected by displaying a
"Connection closed by remote server" message.

The problem can be solved by inserting a "<CRLF>0" sequence between the end
of the body and the two last <CRLF>'s .

BTW: On a normal request, if Opera is not able to determine the correct size
of the document because the size is varying erratically, Opera will say that
multiple attempts to load the document failed.

END OF OPERA'S EXPLANATION.
 
Ad

Advertisements

Joined
Oct 3, 2005
Messages
1
Reaction score
0
Same error in Opera v8.5

Hi BGS,

Just for your information I receive the same error message using Opera v8.5. My ASP.NET project also uses postbacks.

I found this explanation on my travels which doesn't apply to me:
http://www.opera.com/support/search/supsearch.dml?index=170

The solution Opera provide is over my head to, and I'd guess and say a way to apply the solution from Opera would be to add/edit a HTTP Header, but I doubt if this would append/insert where Opera say it's needed. Maybe someone knows a way to add the solution by means of editing an XML file within the .NET Framework. Or a way of grabbing the HTTP Chunk, editing and spitting it back out?

It's annoying when this error is the only issue from adding Opera to my projects supported browsers list. Maybe this issue is fixed or doesn't exist in ASP.NET 2.0? If no issue in v2.0, I'd guess the buck stops at MS.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top