An Apache server with suEXEC support
is running on
cgi.cs.indiana.edu. This service
is only available to those with a Sharkestra account, ie faculty,
staff, and graduate students. In order to initialize your CGI
environment run `makecgi` from your Sharkestra account. A short blurb
will print out explaining how to use it. The service is proxied
through the CS dept's main web server www.cs.indiana.edu via
http://www.cs.indiana.edu/cgi-pub/username/script.cgi
If you must have a non-proxied CGI environment, then you can
use http://cgi.cs.indiana.edu/~username/script.cgi instead. This is not the
officially supported method of access and may change in the future, so
http://www.cs.indiana.edu/cgi-pub/username/script.cgi is preferred.
Scripts should be placed in /l/cgi/username/cgi-pub in order to be
referenced. All CGI processes will run on cgi.cs.indiana.edu. Note
that cgi.cs.indiana.edu is not allowed to import NFS. This means that
/l/* and /nfs/* filesystems will not be available for the most
part. Store ONLY files neccessary for your CGI apps in
/l/cgi/username.
CGI's must meet a few criteria in order to execute properly.
- /l/cgi/username home directory must have world execute permissions set
- The
suEXEC Security Model must be met.
- By default, scripts must end with .cgi filename extention. If you want to have a cgi
file without the .cgi extension, you can do this by creating a .htaccess file
in the directory containing the script that contains something like this:
<Files somefile>
SetHandler application/x-httpd-cgi
</Files>
In this example, you would replace somefile with the name of your cgi script.
- CGI's will run under the users Unix UID
While debugging cgi scripts you may find it helpful to watch the cgi
server error logs, which may include things like syntax or permission
errors in your scripts. These logs are available in /l/apache/logs
after you ssh to cgi.cs.indiana.edu. Please see the
associated web/cgi server log file FAQ for more
information.