http://www.perlmonks.org?node_id=85713


in reply to What could prompt an internal server error?

It would be helpful if you could post the first 20 lines of your program.

It is possible that you are not printing the http header early enough. Try adding a line to print that header again for debug purposes right at the top of your program.

Perhaps you are having trouble including a module or you have a BEGIN block or other initial processing which dies with an error message (when the browser is expecting an http header). Carp is good, but why not first try running it from command line or from browser with that extra header being printed at the beginning. Then you can add print statements as milestones to tell you where your program has gone.

If this fails also check permissions, try chmod 755 yourscript.cgi also make sure your apache can execute as cgi files with the extension (.pl or .cgi) which you have decided to use. Oh and also make sure you are running perl 5 (type perl -V).

Replies are listed 'Best First'.
Re: Some other things to check
by Vynce (Friar) on Jun 05, 2001 at 11:31 UTC

    Another really important possible source of information is your server logs. what do they say? anything? i just debugged something by spending an hour pulling my hair out and smashing my head against a wall and then 30 seconds reading the logfile and fixing the problem it told me about.

    if you're running apache on a unix system, they're likely at /var/log/httpd-error.log or something like it.