--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+<TITLE>Apache module mod_isapi</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">Module mod_isapi</h1>
+
+<p>This module is contained in the <code>mod_isapi.c</code> file, and is
+ compiled in by default. It provides support for ISAPI Extensions when
+ running under Microsoft Windows. Any document with a handler of
+ <code>isapi-isa</code> will be processed by this module.
+
+<h2>Purpose</h2>
+
+<p>This module implements the <a
+ href="http://www.microsoft.com/win32dev/apiext/isapimrg.htm">ISAPI
+ Extension</a> API. It allows Internet Server Applications (i.e., ISAPI
+ Extensions) to be used with Apache for Windows.
+
+<h2>Usage</h2>
+
+<p>In the server configuration file, add a handler called
+ <code>isapi-isa</code>, and map it to files with a <code>.DLL</code>
+ extension. In other words:</p>
+<pre>
+ AddHandler isapi-isa dll
+</pre>
+<p>Now simply place the ISA DLLs into your document root, and they will
+ be loaded when their URLs are accessed.</p>
+
+<p>ISAPI Extensions are governed by the same restrictions as CGI
+ scripts. That is, <code>Options ExecCGI</code> must be active in the
+ directory that contains the ISA.</p>
+
+<h2>Notes</h2>
+
+<p>Apache's ISAPI implementation conforms to all of the ISAPI 2.0
+ specification, except for the "Microsoft-specific" extensions dealing
+ with ascynchronous I/O. Apache's I/O model does not allow asynchronous
+ reading and writing in a manner that the ISAPI could access. If an ISA
+ tries to access async I/O, a message will be place in the error log,
+ to help with debugging.
+
+<p>Some servers, like Microsoft IIS, load the ISA into the server, and
+ keep it loaded until memory usage is too high, and it is
+ unloaded. Apache currently loads and unloads the ISA for each
+ request. This is inefficient, but Apache's request model makes this
+ method the only method that currently works. A future release may use
+ a more effective loading method.
+
+<p>Apache 1.3a1 currently limits POST and PUT input to 48k per
+ request. This is to work around a problem with the ISAPI implementation
+ that could result in a denial of service attack. It is expected that
+ support for larger uploads will be added soon.
+
+<p>Also, remember that while Apache supports ISAPI Extensions, it does
+ not support ISAPI Filters. Support for filters may be added at a later
+ date, but no support is planned at this time.</p>
+
+<!--#include virtual="footer.html" -->
+</BODY>
+</HTML>
<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>
+ applicable. A few things are, however, different, or new:</p>
<ul>
<li><p>Because Apache for Windows is multithreaded, it does not use a
</pre>
<p>Information on <a href="mod/mod_dll.html#creating">creating module
DLLs</a> is also available.</p>
+ <li><p>Apache can also load ISAPI Extensions (i.e., Internet Server
+ Applications), such as those used by Microsoft's IIS, and other
+ Windows servers. <a href="mod/mod_isapi.html">More information
+ is available.</a>
</ul>
<p>Once Apache is configured correctly, it is nearly ready to be