Apache Server Configuration
(Last revised 13 December 2004) This section describes the precise details of configuring the Apache web server to work with Caucus. It assumes that you have already installed your web server and are generally familiar with the server configuration files.
You can apply the configuration instructions below by editing your "master" httpd.conf file if they do not cause any conflicts with your normal setup. Otherwise, you may wish to create a virtual host (<VirtualHost ...>) and apply these instructions inside its definition.
- Allow access to Caucus directories
The newer releases of Apache default to a very restrictive set of permissions for directories outside the "document root" of the web server tree. Thus, you may need to explicitly allow access to directories that Caucus uses. Add the lines shown below, replacing /home/caucus with the home directory of the Caucus userid on your system.
<Directory /home/caucus/SWEB> Options All AllowOverride All allow from all </Directory> <Directory /home/caucus/REG> Options All AllowOverride All allow from all </Directory>
- Define CGI directories
Tell Apache that the two directories (in #1) contain CGI programs. Add the lines:
ScriptAlias /sweb/ /home/caucus/SWEB/ ScriptAlias /reg/ /home/caucus/REG/
- Define special "/caucus" URLs
The "special" Caucus URL http://yourhost.com/caucus is a feature that allows easy access into Caucus. Add the lines:
ScriptAlias /caucus/ /home/caucus/REG/start.cgi/ ScriptAlias /caucus /home/caucus/REG/start.cgi
- Allow access to ~caucus
Tell Apache to map "http://yourhost.com/~caucus" to /home/caucus/public_html. You can do this in either of two ways:
- If it is OK to map all "~user" URLs to the equivalent public_html directories, add the line:
UserDir public_htmlIn many distributions of Apache, this option is already turned on.
- If you do not want to allow open public_html directories, you can either add the line above just to your Caucus virtual host, or else you can define a specific alias just for the Caucus userid:
Alias /~caucus /home/caucus/public_html
- Restrict Directory Indexing
In order to prevent users from seeing the lists of all of the files in the Caucus file libraries, you should turn off directory indexing for Caucus. Add the lines:
<Directory /home/caucus/public_html> Options -Indexes </Directory>
- Allow file upload
On some systems (notably FreeBSD), you may need to add the line
AddHandler cgi-script .cgiin order to allow Caucus to upload files into conferences. Don't do this unless you encounter trouble with the Caucus file upload feature.
- Restrict Access with userids and passwords
Access authorization for the Apache server is set up automatically by the Caucus installation script. It creates the files /home/caucus/SWEB/.htaccess, and /home/caucus/public_html/LIB/.htaccess, which declare that these directories are password-protected. Those files in turn point to the userid and password database file /home/caucus/caucus_passwd, which is also set up by the Caucus installation script.
To add userids, Caucus managers may select "Manage Individual User Accounts" from the Caucus management page. Or your users may self-register their own userid and password from the link in the caucus.html page.