Apache (and dev server) throws "connection reset" when accessing pages via IE 6

151 views
Skip to first unread message

Rishabh Manocha

unread,
May 20, 2008, 8:53:13 AM5/20/08
to django...@googlegroups.com
Hey Guys,

I have just deployed my code to my test server (from my laptop) and
setup apache/mod_python to serve the pages. Everything works just fine
when I work with Firefox, but whenever I access my pages using IE 6, I
keep getting the following errors in the apache error logs:

[Tue May 20 17:59:43 2008] [notice] mod_python: (Re)importing module
'django.core.handlers.modpython'
[Tue May 20 17:59:45 2008] [notice] mod_python: (Re)importing module
'django.core.handlers.modpython'
[Tue May 20 17:59:45 2008] [notice] mod_python: (Re)importing module
'django.core.handlers.modpython'
[Tue May 20 17:59:45 2008] [notice] mod_python: (Re)importing module
'django.core.handlers.modpython'
[Tue May 20 17:59:45 2008] [info] [client 146.208.137.89]
(104)Connection reset by peer: core_output_filter: writing data to the
network
[Tue May 20 17:59:45 2008] [info] [client 146.208.137.89] (32)Broken
pipe: core_output_filter: writing data to the network

This results in my forms being thrown off the tracks and I end up
getting weird form results (going by the data being saved to the DB).

I am using apache 2.0 and mod_python 3.2:
httpd-2.2.3-6.el5
mod_python-3.2.8-3.1

My apache configuration is:
<Location "/userform/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE MyProject.settings
SetEnv PYTHON_EGG_CACHE /tmp/python-eggs
PythonDebug On
PythonPath "['/opt/proj'] + sys.path"
</Location>


I get a similar error using the dev server:

Exception happened during processing of request from ('127.0.0.1', 2144)
Traceback (most recent call last):
File "C:\Python25\lib\SocketServer.py", line 222, in handle_request
self.process_request(request, client_address)
File "C:\Python25\lib\SocketServer.py", line 241, in process_request
self.finish_request(request, client_address)
File "C:\Python25\lib\SocketServer.py", line 254, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "C:\Python25\Lib\site-packages\django\core\servers\basehttp.py",
line 554, in __init__
BaseHTTPRequestHandler.__init__(self, *args, **kwargs)
File "C:\Python25\lib\SocketServer.py", line 522, in __init__
self.handle()
File "C:\Python25\Lib\site-packages\django\core\servers\basehttp.py",
line 594, in handle
self.raw_requestline = self.rfile.readline()
File "C:\Python25\lib\socket.py", line 346, in readline
data = self._sock.recv(self._rbufsize)
error: (10054, 'Connection reset by peer')

I read [1] where this guy had a similar problem but fixed it by
changing his proxy settings to make it such that going to localhost
does not take a route via the proxy. Trying the same thing did not
help in my case.

I was hoping someone else would have run into this problem and could
suggest a solution.

Many thanks,

Rishabh

[1] - http://groups.google.com/group/django-users/browse_thread/thread/bfb25d10aa51ed2/3272996e2ea13fd3

Graham Dumpleton

unread,
May 20, 2008, 8:12:53 PM5/20/08
to Django users
> [1] -http://groups.google.com/group/django-users/browse_thread/thread/bfb2...

This indicates that the browser (or proxy) closed the connection
before all response content had been sent. Use live headers extension
for Firefox to capture the response headers and make sure the Content-
Length is actually correct for the amount of data sent. Some browsers
are more tolerant of incorrect content lengths on responses than
others. If the browser is being more strict it may close connection
immediately it sees content length read, but if you were wrongly
sending more data than that, result would be truncated and would get
this error on server side if running with 'info' for LogLevel. Note
that by default LogLevel is 'warn' and you wouldn't normally see this
message.

You could also use any of the various network traffic analysers to
also monitor what is being sent in response and thus work out at what
point the connection is being cut off and whether it is consistently
at same point.

Graham

Rishabh Manocha

unread,
May 23, 2008, 2:26:44 AM5/23/08
to django...@googlegroups.com
Graham,

Thanks for the reply (and pardon me for the delayed response). It ended up being a proxy setting that I was missing (or at-least that's what it seems like). I have fixed that, and no longer see the connection reset issues. I will however, keep your tips above in store - it definitely seems like that could be an issue if my app ever goes large.

Thanks for your help,

R
Reply all
Reply to author
Forward
0 new messages