--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+<TITLE>Using Apache with Microsoft Windows</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">Using Apache With Microsoft Windows</H1>
+
+<p>This document explains how to compile, install, configure and run
+ Apache 1.3a1 (or later) under Microsoft Windows. Please note that at
+ this time, Windows support is entirely experimental, and is
+ recommended only for experienced users. The Apache Group does not
+ guarantee that this software will work as documented, or even at
+ all. If you find any bugs, or wish to contribute in other ways, please
+ use our <a href="http://www.apache.org/bug_report.html">bug reporting
+ page.</a></p>
+
+<hr>
+
+<ul>
+ <li><a href="#req">Requirements</a>
+ <li><a href="#down">Downloading Apache for Windows</a>
+ <li><a href="#comp">Compiling Apache for Windows</a>
+ <li><a href="#inst">Installing Apache for Windows</a>
+ <li><a href="#use">Using Apache for Windows</a>
+</ul>
+
+<hr>
+
+<h2><a name="req">Requirements</a></h2>
+
+<p>Apache 1.3a1 requires the following:</p>
+
+<ul>
+ <li>Microsoft Windows NT 4.0<a href="#351">*</a>, or Windows 95.
+ <li>An Intel-based PC-compatible capable of running above OS (exact
+ requirements unknown) with a connection to a TCP/IP network.
+ <li>Microsoft Visual C++ 5.0 or later.
+</ul>
+
+<p><small><a name="351">*</a> Apache may run with Windows NT 3.5.1, but
+ has not been tested.</small></p>
+
+<p>Apache 1.3a1 is available only in source form. Future releases will
+ contain prebuilt binaries for use by those without compilers (which we
+ understand are the vast majority of Windows users), however the
+ current release requires Microsoft Visual C++ 5.0 or later. The Apache
+ Group is releasing 1.3a1 only as source to limit the alpha release to
+ those who have the tools and knowledge to assist with the development
+ processes.</p>
+
+<p>This documentation assumes good working knowledge of Microsoft
+ Windows, Microsoft Visual C++, and the Apache web server (for
+ Unix).</p>
+
+<H2><a name="down">Downloading Apache for Windows</a></H2>
+
+<p>Information on the latest version of Apache can be found on the Apache
+web server at <A
+HREF="http://www.apache.org/">http://www.apache.org/</A>. This will
+list the current release, any more recent alpha or beta-test release,
+together with details of mirror web and anonymous ftp sites.</p>
+
+<p>You will be able to download Apache 1.3a1 or a later release in
+ several forms, including a WinZip (<code>.zip</code>)
+ archive. Although this contains the same files as the others (likely
+ <code>.tar.gz</code> and <code>.tar.Z</code>), it is recommended for
+ Windows use, as all the files contained therein will contain Windows
+ line breaks. The other archives may contain files with Unix line
+ breaks, which will not function on Windows (although they may).</p>
+
+<h2><a name="comp">Compiling Apache for Windows</a></h2>
+
+<p>Compiling Apache requires Microsoft Visual C++ 5.0 to be properly
+ installed. It is easiest to compile with the command-line tools
+ (nmake, etc...). Consult the VC++ manual to determine how to install
+ them.</p>
+
+<p>First, unpack the Apache distribution into an appropriate
+ directory. Open a command-line prompt, and change to the
+ <code>src</code> subdirectory of the Apache distribution.</p>
+
+<p>The master Apache makefile instructions are contained in the
+ <code>Makefile.nt</code> file. To compile Apache, simply use one of
+ the following commands:
+<ul>
+<li><code>nmake /f Makefile.nt release</code>
+<li><code>nmake /f Makefile.nt debug</code>
+</ul>
+
+<p>These will both compile Apache. The latter will include debugging
+ information in the resulting files, making it easier to find bugs and
+ track down problems.</p>
+
+<p>Apache can also be compiled using VC++'s Visual Studio development
+ environment. Although compiling Apache in this manner is not as simple,
+ it makes it possible to easily modify the Apache source, or to compile
+ Apache if the command-line tools are not installed.</p>
+
+<p>Project files (<code>.DSP</code>) are included for each of the
+ portions of Apache. The two projects that are necessary for Apache to
+ run are <code>Apache.dsp</code> and <code>ApacheCore.dsp</code>. The
+ <code>src\nt</code> subdirectory also contains project files for the
+ optional modules (see below).</p>
+
+<h2><a name="inst">Installing Apache for Windows</a></h2>
+
+<p>Once Apache has been compiled, it needs to be installed in its server
+ root directory. The hard-coded default is the <code>\Apache</code>
+ directory, on the current hard drive. Another directory may be used,
+ but the files will need to be installed manually.</p>
+
+<p>To install the files into the </code>\Apache</code> directory
+ automatically, use one the following nmake commands (see above):</p>
+<ul>
+<li><code>nmake /f Makefile.nt installr</code> (for release build)
+<li><code>nmake /f Makefile.nt installd</code> (for debug build)
+</ul>
+
+<p>This will install the following:</p>
+
+<ul>
+ <li><code>\Apache\Apache.exe</code> - Apache executable
+ <li><code>\Apache\ApacheCore.dll</code> - Main Apache shared library
+ <li><code>\Apache\modules\ApacheModule*.dll</code> - Optional Apache
+ modules (7 files)
+ <li><code>\Apache\conf</code> - Empty configuration directory
+ <li><code>\Apache\logs</code> - Empty logging directory
+</ul>
+
+<p>If you do not have nmake, or wish to install in a different directory,
+ be sure to use a similar naming scheme.</p>
+
+<h2><a name="use">Using Apache for Windows</a></h2>
+
+<p>The first step is to set up Apache's configuration files. Default
+ configuration files for Windows are located in the <code>conf</code>
+ subdirectory in the Apache distribution, and are named
+ <code>httpd.conf-dist-win</code>, <code>access.conf-dist-win</code>
+ and <code>srm.conf-dist-win</code>. Move these into
+ <code>\Apache\conf</code>, and rename them <code>httpd.conf</code>,
+ <code>access.conf</code> and <code>srm.conf</code>, respectively.</p>
+
+<p>Configuring Apache is nearly identical to the Unix version of Apache,
+ so most of the standard <a href="./">Apache documentation</a> is
+ applicable. A few things are, however, different:</p>
+
+<ul>
+ <li><p>Because Apache for Windows is multithreaded, it does not use a
+ separate process for each request, as Apache does with
+ Unix. Therefore, the "process"-management directives are different:
+ <p><a href="mod/core.html#startservers">StartServers</a> - This
+ tells the server how many processes to use. Unlike Unix, there
+ will never be more than this number, and only one will be used
+ at a time (the others will be held in reserve in case the main
+ processes crashes or otherwise dies). The recommended default is
+ <code>StartServers 3</code>.
+ <p><a
+ href="mod/core.html#maxrequestsperchild">MaxRequestsPerChild</a>
+ - Like the Unix directive, this controls how many requests a
+ process will serve before exiting. However, unlike Unix, a
+ process serves all the requests at once, not just one, so if
+ this is set, it is recommended that a very high number is
+ used. The recommended default, <code>MaxRequestsPerChild
+ 0</code>, does not cause the process to ever exit.
+ <p><a href="mode/core.html#threadsperchild">ThreadsPerChild</a> -
+ This directive is new, and tells the server how many threads it
+ should use. This is the maximum number of connections the server
+ can handle at once; be sure and set this number high enough for
+ your site if you get a lot of hits. The recommended default is
+ <code>ThreadsPerChild 20</code>.</p>
+ <li><p>The directives that accept filenames as arguments now must use
+ Windows filenames instead of Unix ones. However, because Apache
+ uses Unix-style names internally, you must use forward slashes, not
+ backslashes. Drive letters can be used; if omitted, the drive with
+ the Apache executable will be assumed.</p>
+ <li><p>Apache for Windows contains the ability to load modules at runtime,
+ without recompiling the server. If Apache is compiled normally, it
+ will install a number of optional modules in the
+ <code>\Apache\modules</code> directory. To activate these, or other
+ modules, the new <a href="mod/mod_dll.html#loadmodule">LoadModule</a>
+ directive must be used. For example, to active the status module,
+ use the following (in addition to the status-activating directives
+ in <code>access.conf</code>):</p>
+<pre>
+ LoadModule status_module modules/ApacheModuleStatus.dll
+</pre>
+ <p>Information on <a href="mod/mod_dll.html#creating">creating module
+ DLLs</a> is also available.</p>
+</ul>
+
+<p>Once Apache is configured correctly, it is nearly ready to be
+run. However, we recommend you copy the <code>icons</code> and
+<code>htdocs</code> subdirectories from the Apache distribution to
+<code>\Apache</code>. The latter is especially important, as it contains
+the document root (what the server actually serves).
+
+<p>Apache can be executed in one of two ways, directly from the command
+ line, or as a Windows NT service. To run it from the command line, use
+ the following command:
+<pre>
+ C:\Apache> <b>apache -s</b>
+</pre>
+
+<p>Apache will then execute, and will remain running until it is
+ exited. To use Apache as a Windows NT service, use the following:</p>
+<pre>
+ C:\Apache> <b>apache -i</b>
+</pre>
+<p>Then open the Services control panel, and start the Apache service.</p>
+
+<p>If you installed Apache in a server root other than
+ <code>\Apache</code>, you must use the <code>-f</code> command-line
+ option to specify the httpd.conf file, or the <code>-d</code> option
+ to specify the server root.</p>
+
+<!--#include virtual="footer.html" -->
+</BODY>
+</HTML>