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: