CGI/Perl Help

Here are your paths to the common server resources that CGI scripts often require:

Sendmail: /usr/lib/sendmail

Perl5: #!/usr/bin/perl

Serverpath: /home/username/domain-www/cgi-bin

Root path: /home/username/
(puts you in your the root of your account)

Domain directory: /home/username/domainname-www
(puts you in your www directory)

Cgi-bin path: /home/username/domainname-www/cgi-bin/filename
(puts you in your cgi-bin)

NOTE: Do not include domain extension anywhere you list your domain name.

Below are solutions to some of the more common CGI script problems.

When I activate my CGI program, I get back a page that says "Internal Server Error.  The server encountered an internal error or mis-configuration and was unable to complete your request."

This is generally caused by a problem within the script. Check your script settings again to see that you have entered the correct server information and have set the correct permissions for the script. If this information is correct, you'll need to contact whoever wrote or is distributing the script for further assistance.

I am being told "File Not Found," or "No Such File or Directory."

Upload your Perl or CGI scripts in ASCII mode, not binary mode.

When I test my Perl script in local mode (by Telnet), I have the following error:
"Literal @domain now requires a back slash at myscript.pl line 3, within string.   Execution of myscript.pl aborted due to compilation errors."

This is caused by a misinterpretation by Perl. You see, the "@" sign has a special meaning in Perl; it identifies an array (a table of elements). Since it cannot find the array named domain, it generates an error. You should place a back slash (\) before the "@" symbol to tell Perl to see it as a regular symbol, as in an email address.

I am getting the message "POST not implemented."

You are probably using the wrong reference for cgiemail. Use the reference
/cgi-bin/cgiemail/mail.txt. Another possibility is that you are pointing to a cgi-bin script that you have not put in your cgi-bin directory. In general, this message really means that the web server is not recognizing the cgi-bin script you are calling as a program. It thinks it is a regular text file.

Here are a few good resources for available CGI/Perl programs on the Internet:

Add Feedback