<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<TITLE>Apache 2.0 documentation</TITLE>
</HEAD>

<!-- Background white, links blue (unvisited), navy (visited), red (active) -->
<BODY
 BGCOLOR="#FFFFFF"
 TEXT="#000000"
 LINK="#0000FF"
 VLINK="#000080"
 ALINK="#FF0000"
>
<!--#include virtual="header.html" -->
<H1 ALIGN="CENTER">Apache 2.0 User's Guide</H1>

<HR>

<H3><A NAME="new">Release Notes</A></H3>
<UL>
<LI><A HREF="new_features_2_0.html">New features in Apache 2.0</A>
<LI><A HREF="LICENSE">Apache License</A>
</UL>

<H3><A NAME="ref">Apache Reference Manual</A></H3>

<UL>
<LI><A HREF="http://www.apache.org/search.html">
    <STRONG>Search</STRONG></A> for key words
<LI><A HREF="install.html">Compiling and Installing</A>
<LI><A HREF="invoking.html">Starting</A>
<LI><A HREF="stopping.html">Stopping or Restarting</A>
<LI><A HREF="mod/directives.html">Run-time configuration directives</A>
<LI><A HREF="mod/index.html">Modules</A>
<LI><A HREF="vhosts/index.html">Virtual Hosts</A>
<LI><A HREF="dso.html">Dynamic Shared Object (DSO) support</A>
<LI><A HREF="handler.html">Handlers</A>
<LI><A HREF="content-negotiation.html">Content negotiation</A>
<LI><A HREF="env.html">Special purpose environment variables</A>
<LI><A HREF="misc/API.html">The Apache API</A>
<LI><A HREF="suexec.html">Using SetUserID Execution for CGI</A>
</UL>

<H3><A NAME="oth">Other Notes</A></H3>
<UL>
<LI><A HREF="misc/FAQ.html">Frequently Asked Questions</A>
<LI><A HREF="misc/rewriteguide.html">URL Rewriting Guide</A>
<LI><A HREF="misc/perf-tuning.html">General Performance hints</A> for
getting the best performance out of Apache
<LI><A HREF="misc/perf.html">OS Specific Performance hints</A> to help
fine-tune specific platforms
<LI><A HREF="misc/security_tips.html">Security tips</A>
<LI><A HREF="misc/compat_notes.html">Compatibility Notes with NCSA httpd</A>
<LI><A HREF="misc/howto.html">How do I? documentation</A>
<LI><A HREF="misc/fin_wait_2.html">Discussion of the FIN_WAIT_2 problem</A>
<LI><A HREF="misc/known_client_problems.html">Known problems with various
 clients</A>
<LI><A HREF="developer/index.html">Documentation for Apache developers</A>
</UL>

<!--#include virtual="footer.html" -->
</BODY>
</HTML>

