Webhosting

UGCS is proud to offer webhosting services to our users. Our webserver is poseidon.ugcs.caltech.edu, and can be accessed at www.ugcs.caltech.edu or ugcs.caltech.edu.

Server Settings

Here are the important bits of our server settings:

Server Version: Apache 2.2
UserDir /afs/ugcs/user/<username>/public/html      # this is where your webroot is
ScriptDir /afs/ugcs/user/<username>/public/cgi-bin # cgi-scripts go here; accessible at
                                                  # ugcs.caltech.edu/~username/cgi-bin

DocumentIndex index.xhtml index.shtml index.html index.php
Options +Indexes # if you don't have an index.html or index.php, users can will see a directory listing
AllowOverride  AuthConfig FileInfo Indexes Options

Scripting

All scripts (cgi-bin scripts and php scripts) are run as CGI scripts through a wrapper. Your script will run as the <username>_cgi principal. If you want your scripts to be able to write to a directory, add an ACL on the directory so that principal can write to it. By default, your ~/public directory is world-readable, so your scripts will be able to read stuff in your public directory. If you need additional libraries installed, please let us know.

Database Access

We run PostgreSQL for our users. More information is available on our postgres help page.

Kerberos Authentication

We have installed mod_auth_kerb on our webserver, so you can take advantage of our Kerberos database for authentication. Add the following lines to your .htaccess file to restrict access to your pages:

AuthType Kerberos
AuthName "<Your Website>"
Krb5KeyTab "/etc/apache2/poseidon-apache.keytab"
Require valid-user

As show, this will allow anyone with a valid UGCS account to view your page. If you want to restrict access to just a few users, replace the line

Require valid-user

with the following line:

Require <username1>@UGCS.CALTECH.EDU [ <username2>@UGCS.CALTECH.EDU ...]

If you have installed a Kerberos client on your computer and have active kerberos tickets, Firefox will automatically use them to authenticate to any websites protected with these settings.

Virtual Hosting

See Virtual Hosting