Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

How can I find a 'Document contains no data' problem?

by Anonymous Monk
on Jul 25, 2000 at 03:47 UTC ( #24219=perlquestion: print w/replies, xml ) Need Help??

Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

I have a html page which refers to a cgi script written in perl. However, when I click on the 'Send' button on this page, I get the message 'Document contained no data'. What could be wrong?

I have already checked the path for perl in the cgi script.

Also the path for the perl cgi script in the html page also seems to be right?

What other things can I check?

Any help would be deeply appreciated.

Originally posted as a Categorized Question.

  • Comment on How can I find a 'Document contains no data' problem?

Replies are listed 'Best First'.
Re: How can I find a 'Document contains no data' problem?
by extremely (Priest) on Oct 24, 2000 at 05:58 UTC
    Document contains no data is a pretty clear indicator that your program exited early. Like other have said, check your error logs, add the lovely use CGI::CARP qw(fatalsToBrowser); to hopefully get SOME data to the browser.

    Also, if it's a basic perl script cgi try perl -cw filename.cgi and see if it complains about a simple error that might bomb it out.

    I had this happen once with a 45kb script with scads of modules. I had -w and use strict; and CGI and Carp and all that jazz going, no errors in the log, no compile errors, nothin. After hours, literally, I noticed that I had absentmindedly put an exit(0); where a much more reasonable return(0); should have been. =) It happens...

Re: How can I find a 'Document contains no data' problem?
by steveAZ98 (Monk) on Jul 25, 2000 at 06:01 UTC
    First check your permissions for the script, make sure it's executable. ie chmod 755 scriptname in the unix world.

    Then check that your script is sending back the content type ie. Content-type: text/html\n\n

    Then check that your webserver is configured for the directory of where your script lives. ie. if your webserver is configured for cgi scripts in /cgi-bin and your calling /bin/script

    If all those are correct, check the error logs of that website. Any errors in opening files, file permissions etc. should be there. Maybe you want to check this first as it will give you a better idea of where to start.

    HTH

    Also, try using use CGI::Carp qw/fatalstoBrowser/ to get any error messages to appear in the browser window.
    Contributed by davorg -- Q&AEditors

Re: How can I find a 'Document contains no data' problem?
by cei (Monk) on Oct 24, 2000 at 05:12 UTC
    One that kills me sometimes when I'm not paying attention: make sure your script is using line breaks that match the system your server is running. I often write my perl in BBEdit on my Mac, but I have to save with DOS or UNIX linebreaks for them to run properly on a server. When I don't the "Document contained no data" is the error it gives me.
Re: How can I find a 'Document contains no data' problem?
by Anonymous Monk on Jun 24, 2002 at 21:18 UTC
    I had to have print "Status: 302\n"; before the Location: This was the only solution.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://24219]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (3)
As of 2021-09-28 02:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?