<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>Rivet Configuration Directives</title>
    <link rel="stylesheet" href="style.css">
  </head>

  <body>
    <? prevnext "<h1>Rivet Configuration Directives</h1>" ?>

    Rivet provides several Apache configuration directives, and, where
    possible, allows the administrator and or user to configure
    options both in Apache's configuration file (httpd.conf) or via
    .htaccess files.

    <table align="center">
      <tbody>
	<tr>
	  <td>
	    <img src="confs.png" alt="Apache Configuration Hierarchy">
	  </td>
	  <td>
<pre>
/mysite
       /.htaccess
       /subdir1
       /subdir2
               /.htaccess

</pre>
	  </td>
	</tr>
      </tbody>
    </table>


    <?footer?>
  </body>
</html>
