J'ai django 1.3 sur le serveur distant derrière Nginx.
Si je lance django avec apache + mod_wsgi, je peux regarder les erreurs dans les fichiers de log d'apache. C'est ok, mais j'aimerais avoir dans la console.
Si je lance django propre serveur de développement, j'ai des erreurs avec stacktrace en console uniquement lorsque DEBUG = False. En mode DEBUG console sorties
Exception happened during processing of request from (..., ...)
Traceback (most recent call last):
File "/usr/local/python/lib/python2.7/SocketServer.py", line 284, in _handle_request_noblock
self.process_request(request, client_address)
File "/usr/local/python/lib/python2.7/SocketServer.py", line 310, in process_request
self.finish_request(request, client_address)
File "/usr/local/python/lib/python2.7/SocketServer.py", line 323, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/usr/local/python/lib/python2.7/site-packages/django/core/servers/basehttp.py", line 570, in __init__
BaseHTTPRequestHandler.__init__(self, *args, **kwargs)
File "/usr/local/python/lib/python2.7/SocketServer.py", line 641, in __init__
self.finish()
File "/usr/local/python/lib/python2.7/SocketServer.py", line 694, in finish
self.wfile.flush()
File "/usr/local/python/lib/python2.7/socket.py", line 301, in flush
self._sock.sendall(view[write_offset:write_offset+buffer_size])
error: [Errno 32] Broken pipe
Je veux comprendre pourquoi? Pourquoi django juste sortie sans nom d'Exception? Pourquoi est-il dépendent de la variable DEBUG.
Cette erreur se produit surtout des vues sur l'extérieur quand je n'ai pas accès à l'objet de demande. Donc, je ne peux pas l'attraper dans l'intergiciel (middleware ou de l'utilisation de la journalisation de gestionnaire.
La mise à JOUR. J'ai remarqué que si je demande à django directement le serveur je n'ai jamais Cassé la pipe. Donc, la question peut se produire alors que proxy Nginx django?