Because that's when Django is not going to use the debugging page, but
rather display your 500 template. When DEBUG=True, you will see the nice
debugging page, but that's for development purposes, not for general
production use (although it can be useful to have it on for brief
periods in production to diagnose problems).
> but it
> happens consistently when debugging is off.
Which means that your site is consistently throwing some kind of
internal error.
You are responsible for providing a 500.html template that will be
returned to your users when an internal, uncaught error is thrown. That
still won't provide you with any extra debugging information, unless you
enable mailing to the admins (which will then send 500 errors to you).
You could set DEBUG=True for a while if you can trigger the problem
yourself and then use the debug screen to diagnose the problem, but if
it is only occurring sporadically, that won't be as productive.
Regards,
Malcolm
When DEBUG = True, the admin loads just fine.
My problem is that I can't get the admin to fail when debugging is
turned on, so I can never see the helpful Django debugging page.
Further, I don't believe any objects are passed to the 500 template,
so I can't display errors using my template. That's why I removed my
500.html template -- so that mod_python would throw the (nasty
looking) error.
I'm trying to figure out a) why the admin is throwing errors only when
DEBUG=False and b) how I can display the source of the error.