"Your program doesn't work". Such reports cause technical support staff to be pulling their hair out. "In what way did it fail" they'll ask, hoping for some clue that can point them towards their caller's problem.
So why does on earth does an Apache httpd web server report:
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
whenever anything goes wrong; it's roughly saying "That didn't work" !!
It's intentional! ... Httpd gives a generic message for all failures that may relate to scripts its running and how it's configured exactly so that the web site visitor who gets the message
won't be able to work out what's going wrong and
won't be able to glean internal / structure information that can help him find any weaknesses there may be.
The
web developer who looks after the web server, though, will be able to look in the log files and find a better message - such as:
[Thu Mar 30 20:02:44 2006] [error] [client 192.168.200.66] Undefined subroutine &main::loaltime called at /home/vweb/cgi-bin/t500.pl line 3.
which tells me that the Perl programmer who wrote the script wrote a call to a function loaltime rather than one called lo
caltime ... easily fixed!
If you want to change the less than helpful error message / error response page to your own less that helpful error page, you can use and ErrorDocument directive in your httpd.conf file, of in a .htaccess file if you want to do it on a per-directory basis. Example:
ErrorDocument 500 "/resources/failed500.html"
where the file failed500.html if your error page(written 2006-03-30 19:13:18)
Associated topics are indexed under
A603 - Web Application Deployment - Further httpd ConfigurationP221 - Perl on the Web
Some other Articles
Database design - get it right from first principlesPHP Image viewing applicationRuby course - oops - it's not happeningPython to MySQLAn unhelpful error message from Apache httpdDressed up for a phone callStopping and restarting Apache httpd cleanlyWeb Application ComponentsKeeping the visitors happy and browsingThe ternary operator in Python