ServerRoot /usr/www
This directive specifies the server's home directory.  By default the server looks in the  icons subdirectory of  ServerRoot for its gateway icon files.
 HostName www.rummidge.ac.uk
Set this to the full domain name of your server, for example, 
`` www.rummidge.ac.uk''.  Only necessary if your server doesn't produce its full domain name in response to redirection requests, but it's not a bad idea to set it anyway.
 Port 80
This specifies the TCP port for the server to listen on.  Port 80 is the
default http port, but on a Unix system, ports below 1024 are
``reserved'' and ordinary user programs cannot access them.  Thus if
you want to run on port 80, then the server will have to run as ``root''
and switch to running with the desired user id after startup.  If you
don't run on port 80, your URLs must include the port number after the
machine name.
 UserId wwwowner
 GroupId www
 
These two directives specify the username and group for a standalone server started as root to
change to after startup.  Leaving the server running as root is
extremely inadvisable for security reasons, so by default it then 
changes to run as user  nobody with group  nogroup.  
If you run your server 
standalone on port 80, and you want it to run as a specific user, 
you should set these two parameters.
 Welcome home.html
The value of  Welcome specifies the default file to return when only a directory name is specified in the URL.  The defaults are  Welcome.html, welcome.html and index.html.
 UserDir public_html
HTTPD allows URLs of the form 
 http://www.host.name/~ a_user/mydir/index.html
Setting  UserDir to `` public_html'' means that this URL would
be expanded to 
`` /usr/home/a_user/public_html/mydir/index.html'' if ``
/usr/home/a_user'' is the home directory of the user with username
`` a_user'' .  Of course this directory has to be readable by the
user id that the www server is being run with.
.  Of course this directory has to be readable by the
user id that the www server is being run with.
 Exec /cgi-bin/* /usr/www/cgi-bin/*
 Exec specifies that URLs that match the first parameter refer to
scripts and are mapped onto a file using the second parameter as a
template.  For instance, the example above would map a URL such as:
 http://www.host.name/cgi-bin/date 
 onto the script file ``
/usr/www/cgi-bin/date'', which would then be executed.
A more complex example would be the URL:
 http://www.host/cgi-bin/htimage/www/map/uk_map?404,451
Here the above  Exec rule would map the URL onto the script 
`` /usr/www/cgi-bin/htimage'', and it would pass the additional
information `` /www/map/uk_map'' and `` 404,451'' into the
script in the environment variables  PATH_INFO and 
QUERY_STRING, as defined in the CGI specification.
 specification.
If a URL matches an  Exec rule, no further rules will
be processed for that request.
 Pass /* /usr/www/htdocs/*
 Pass specifies that if the URL matches the first parameter, map
it onto a file using the second parameter as a template and return the
file.  For instance the example here above would map the URL 
 http://www.rummidge.ac.uk/index.html
 
onto the file `` /usr/www/htdocs/index.html'', which would then be returned to the client.  If the URL
matches, no further rules from this rules file will be processed for
this request, so a general  Pass rule such as shown here should
be after any  Map or  Exec rules or they will never be
processed.
 Map /cgi-bin/img/* /cgi-bin/htimage/usr/www/img/*
The  Map command provides translation of the filename in URL.  
Thus the rule sequence:
 Map /* /usr/www/htdocs/*
Pass /*
is functionally equivalent to:
 Pass /* /usr/www/htdocs/*
The example given above,
 Map /img/* /cgi-bin/htimage/usr/www/img/*
Exec /cgi-bin/* /usr/www/cgi-bin/*
would allow the use of the short URL:
 http://www.host.name/img/uk_map?404,451
in place of the much longer:
 http://www.host.name/cgi-bin/htimage/usr/www/img/uk_map?404,451
with exactly the same behaviour.
First `` /img/uk_map?404,451''
matches the  Map rule and gets translated to 
`` /cgi-bin/htimage/usr/www/img/uk_map?404,451'', which then matches the
 Exec rule.  Note that the order of rules in the rules file is
very important here.
 Redirect /list.html http://www.cs.ucl.ac.uk/misc/uk/intro.html
 Redirect allows you to tell clients where a document has moved
to.  For instance if you used to maintain a list of server, but no
longer have the time to do so, you may redirect people who use your
page to someone else's list.  Redirection is usually transparent to
the user.   Redirect can also be used to redirect whole subtrees
using wildcard ( *) matches.  Of course a  Redirect rule
must precede any  Pass or  Exec rules that would otherwise
match the URL.