]> granicus.if.org Git - apache/blobdiff - docs/manual/mod/mod_isapi.html
Merge in APR[-util] macros from branches/trunk-buildconf-noapr
[apache] / docs / manual / mod / mod_isapi.html
index a8d55a5b660daf638a43c3d310e2cbeb20b15dcc..3a04924be167a9d537812258c3a7a9c8a1b2275d 100644 (file)
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+# GENERATED FROM XML -- DO NOT EDIT
 
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta name="generator" content="HTML Tidy, see www.w3.org" />
+URI: mod_isapi.html.en
+Content-Language: en
+Content-type: text/html; charset=ISO-8859-1
 
-    <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 supports ISAPI Extensions within Apache for
-    Windows.</p>
-
-    <p><a href="module-dict.html#Status"
-    rel="Help"><strong>Status:</strong></a> Base<br />
-     <a href="module-dict.html#SourceFile"
-    rel="Help"><strong>Source File:</strong></a> mod_isapi.c<br />
-     <a href="module-dict.html#ModuleIdentifier"
-    rel="Help"><strong>Module Identifier:</strong></a>
-    isapi_module<br />
-     <a href="module-dict.html#Compatibility"
-    rel="Help"><strong>Compatibility:</strong></a> WIN32 only</p>
-
-    <h2>Summary</h2>
-
-    <p>This module implements the Internet Server extension API. It
-    allows Internet Server extensions (<em>e.g.</em> ISAPI .dll
-    modules) to be served by Apache for Windows, subject to the
-    noted restrictions.</p>
-
-    <p>ISAPI extension modules (.dll files) are written by third
-    parties. The Apache Group does not author these modules, so we
-    provide no support for them. Please contact the ISAPI's author
-    directly if you are experiencing problems running their ISAPI
-    extention. <strong>Please <em>do not</em> post such problems to
-    Apache's lists or bug reporting pages.</strong></p>
-
-    <h2>Directives</h2>
-
-    <ul>
-      <li><a href="#isapifilecache">ISAPIFileCache</a></li>
-
-      <li><a
-      href="#isapireadaheadbuffer">ISAPIReadAheadBuffer</a></li>
-
-      <li><a
-      href="#isapilognotsupported">ISAPILogNotSupported</a></li>
-
-      <li><a
-      href="#isapiappendlogtoerrors">ISAPIAppendLogToErrors</a></li>
-
-      <li><a
-      href="#isapiappendlogtoquery">ISAPIAppendLogToQuery</a></li>
-    </ul>
-
-    <h2>Usage</h2>
-
-    <p>In the server configuration file, use the AddHandler
-    directive to associate ISAPI files with the
-    <code>isapi-isa</code> handler, and map it to the with their
-    file extensions. To enable any .dll file to be processed as an
-    ISAPI extention, edit the httpd.conf file and add the following
-    line:</p>
-<pre>
-    AddHandler isapi-isa .dll
-</pre>
-
-    <p>There is no capability within the Apache server to leave a
-    requested module loaded. However, you may preload and keep a
-    specific module loaded by using the following syntax in your
-    httpd.conf:</p>
-<pre>
-    ISAPICacheFile c:/WebWork/Scripts/ISAPI/mytest.dll
-</pre>
-
-    <p>Whether or not you have preloaded an ISAPI extension, all
-    ISAPI extensions are governed by the same permissions and
-    restrictions as CGI scripts. That is, <code>Options
-    ExecCGI</code> must be set for the directory that contains the
-    ISAPI .dll file.</p>
-
-    <p>Review the <a href="#notes">Additional Notes</a> and the <a
-    href="#journal">Programmer's Journal</a> for additional details
-    and clarification of the specific ISAPI support offered by
-    mod_isapi.</p>
-
-    <h2><a id="notes" name="notes">Additional Notes</a></h2>
-
-    <p>Apache's ISAPI implementation conforms to all of the ISAPI
-    2.0 specification, except for some "Microsoft-specific"
-    extensions dealing with asynchronous 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
-    unsupported features, including async I/O, a message is placed
-    in the error log to help with debugging. Since these messages
-    can become a flood, the directive <code>ISAPILogNotSupported
-    Off</code> exists to quiet this noise.</p>
-
-    <p>Some servers, like Microsoft IIS, load the ISAPI extension
-    into the server and keep it loaded until memory usage is too
-    high, or unless configuration options are specified. Apache
-    currently loads and unloads the ISAPI extension each time it is
-    requested, unless the ISAPICacheFile directive is specified.
-    This is inefficient, but Apache's memory model makes this the
-    most effective method. Many ISAPI modules are subtly
-    incompatible with the Apache server, and unloading these
-    modules helps to ensure the stability of the server.</p>
-
-    <p>Also, remember that while Apache supports ISAPI Extensions,
-    it <strong>does not support ISAPI Filters.</strong> Support for
-    filters may be added at a later date, but no support is planned
-    at this time.</p>
-
-    <h2><a id="journal" name="journal">Programmer's
-    Journal</a></h2>
-
-    <p>If you are programming Apache 2.0 mod_isapi modules, you
-    must limit your calls to ServerSupportFunction to the following
-    directives:</p>
-
-    <dl>
-      <dt>HSE_REQ_SEND_URL_REDIRECT_RESP</dt>
-
-      <dd>Redirect the user to another location.<br />
-       This must be a fully qualified URL (e.g.
-      http://server/location).</dd>
-
-      <dt>HSE_REQ_SEND_URL</dt>
-
-      <dd>Redirect the user to another location.<br />
-       This cannot be a fully qualified URL, you are not allowed to
-      pass the protocol or a server name (e.g. simply
-      /location).<br />
-       This redirection is handled by the server, not the
-      browser.<br />
-       <strong>Warning:</strong> in their recent documentation,
-      Microsoft appears to have abandoned the distinction between
-      the two HSE_REQ_SEND_URL functions. Apache continues to treat
-      them as two distinct functions with different requirements
-      and behaviors.</dd>
-
-      <dt>HSE_REQ_SEND_RESPONSE_HEADER</dt>
-
-      <dd>Apache accepts a response body following the header if it
-      follows the blank line (two consecutive newlines) in the
-      headers string argument. This body cannot contain NULLs,
-      since the headers argument is NULL terminated.</dd>
-
-      <dt>HSE_REQ_DONE_WITH_SESSION</dt>
-
-      <dd>Apache considers this a no-op, since the session will be
-      finished when the ISAPI returns from processing.</dd>
-
-      <dt>HSE_REQ_MAP_URL_TO_PATH</dt>
-
-      <dd>Apache will translate a virtual name to a physical
-      name.</dd>
-
-      <dt>HSE_APPEND_LOG_PARAMETER</dt>
-
-      <dd>
-        This logged message may be captured in any of the following
-        logs: 
-
-        <ul>
-          <li>in the \"%{isapi-parameter}n\" component in a
-          CustomLog directive</li>
-
-          <li>in the %q log component with the
-          ISAPIAppendLogToQuery On directive</li>
-
-          <li>in the error log with the ISAPIAppendLogToErrors On
-          directive</li>
-        </ul>
-        The first option, the %{isapi-parameter}n component, is
-        always available and prefered.
-      </dd>
-
-      <dt>HSE_REQ_IS_KEEP_CONN</dt>
-
-      <dd>Will return the negotiated Keep-Alive status.</dd>
-
-      <dt>HSE_REQ_SEND_RESPONSE_HEADER_EX</dt>
-
-      <dd>Will behave as documented, although the fKeepConn flag is
-      ignored.</dd>
-
-      <dt>HSE_REQ_IS_CONNECTED</dt>
-
-      <dd>Will report false if the request has been aborted.</dd>
-    </dl>
-
-    <p>Apache returns FALSE to any unsupported call to
-    ServerSupportFunction, and sets the GetLastError value to
-    ERROR_INVALID_PARAMETER.</p>
-
-    <p>ReadClient retrieves the request body exceeding the initial
-    buffer (defined by ISAPIReadAheadBuffer). Based on the
-    ISAPIReadAheadBuffer setting (number of bytes to buffer prior
-    to calling the ISAPI handler) shorter requests are sent
-    complete to the extension when it is invoked. If the request is
-    longer, the ISAPI extension must use ReadClient to retrieve the
-    remaining request body.</p>
-
-    <p>WriteClient is supported, but only with the HSE_IO_SYNC flag
-    or no option flag (value of 0). Any other WriteClient request
-    will be rejected with a return value of FALSE, and a
-    GetLastError value of ERROR_INVALID_PARAMETER.</p>
-
-    <p>GetServerVariable is supported, although extended server
-    variables do not exist (as defined by other servers.) All the
-    usual Apache CGI environment variables are available from
-    GetServerVariable, as well as the ALL_HTTP and ALL_RAW
-    values.</p>
-
-    <p>Apache 2.0 mod_isapi supports additional features introduced
-    in later versions of the ISAPI specification, as well as
-    limited emulation of async I/O and the TransmitFile semantics.
-    Apache also supports preloading ISAPI .dlls for performance,
-    neither of which were not available under Apache 1.3
-    mod_isapi.</p>
-    <hr />
-
-    <h2><a id="isapifilecache" name="isapifilecache">ISAPIFileCache
-    directive</a></h2>
-    <!--%plaintext &lt;?INDEX {\tt ISAPIFileCache} directive&gt; -->
-    <a href="directive-dict.html#Syntax"
-    rel="Help"><strong>Syntax:</strong></a> ISAPIFileCache
-    <em>file</em> [<em>file</em>] ...<br />
-     <a href="directive-dict.html#Context"
-    rel="Help"><strong>Context:</strong></a> server config<br />
-     <a href="directive-dict.html#Override"
-    rel="Help"><strong>Override:</strong></a> None<br />
-     <a href="directive-dict.html#Status"
-    rel="Help"><strong>Status:</strong></a> Base<br />
-     <a href="directive-dict.html#Module"
-    rel="Help"><strong>Module:</strong></a> mod_isapi<br />
-     <a href="module-dict.html#Compatibility"
-    rel="Help"><strong>Compatibility:</strong></a> Apache 2.0 and
-    later, Win32 only 
-
-    <p>Specifies a space-separated list of file names to be loaded
-    when the Apache server is launched, and remain loaded until the
-    server is shut down. This directive may be repeated for every
-    ISAPI .dll file desired. The full path name of each file should
-    be specified.</p>
-    <hr />
-
-    <h2><a id="isapireadaheadbuffer"
-    name="isapireadaheadbuffer">ISAPIReadAheadBuffer
-    directive</a></h2>
-    <!--%plaintext &lt;?INDEX {\tt ISAPIReadAheadBuffer} directive&gt; -->
-    <a href="directive-dict.html#Syntax"
-    rel="Help"><strong>Syntax:</strong></a> ISAPIReadAheadBuffer
-    <em>size</em><br />
-     <a href="directive-dict.html#Default"
-    rel="Help"><strong>Default:</strong></a> 49152<br />
-     <a href="directive-dict.html#Context"
-    rel="Help"><strong>Context:</strong></a> server config<br />
-     <a href="directive-dict.html#Override"
-    rel="Help"><strong>Override:</strong></a> None<br />
-     <a href="directive-dict.html#Status"
-    rel="Help"><strong>Status:</strong></a> Base<br />
-     <a href="directive-dict.html#Module"
-    rel="Help"><strong>Module:</strong></a> mod_isapi<br />
-     <a href="module-dict.html#Compatibility"
-    rel="Help"><strong>Compatibility:</strong></a> Apache 1.3.13
-    and later, Win32 only 
-
-    <p>Defines the maximum size of the Read Ahead Buffer sent to
-    ISAPI extensions when they are initially invoked. All remaining
-    data must be retrieved using the ReadClient callback; some
-    ISAPI extensions may not support the ReadClient function. Refer
-    questions to the ISAPI extension's author.</p>
-    <hr />
-
-    <h2><a id="isapilognotsupported"
-    name="isapilognotsupported">ISAPILogNotSupported
-    directive</a></h2>
-    <!--%plaintext &lt;?INDEX {\tt ISAPILogNotSupported} directive&gt; -->
-    <a href="directive-dict.html#Syntax"
-    rel="Help"><strong>Syntax:</strong></a> ISAPILogNotSupported
-    on|off<br />
-     <a href="directive-dict.html#Default"
-    rel="Help"><strong>Default:</strong></a> on<br />
-     <a href="directive-dict.html#Context"
-    rel="Help"><strong>Context:</strong></a> server config<br />
-     <a href="directive-dict.html#Override"
-    rel="Help"><strong>Override:</strong></a> None<br />
-     <a href="directive-dict.html#Status"
-    rel="Help"><strong>Status:</strong></a> Base<br />
-     <a href="directive-dict.html#Module"
-    rel="Help"><strong>Module:</strong></a> mod_isapi<br />
-     <a href="module-dict.html#Compatibility"
-    rel="Help"><strong>Compatibility:</strong></a> Apache 1.3.13
-    and later, Win32 only 
-
-    <p>Logs all requests for unsupported features from ISAPI
-    extensions in the server error log. While this should be turned
-    off once all desired ISAPI modules are functioning, it defaults
-    to on to help administrators track down problems.</p>
-    <hr />
-
-    <h2><a id="isapiappendlogtoerrors"
-    name="isapiappendlogtoerrors">ISAPIAppendLogToErrors
-    directive</a></h2>
-    <!--%plaintext &lt;?INDEX {\tt ISAPIAppendLogToErrors} directive&gt; -->
-    <a href="directive-dict.html#Syntax"
-    rel="Help"><strong>Syntax:</strong></a> ISAPIAppendLogToErrors
-    on|off<br />
-     <a href="directive-dict.html#Default"
-    rel="Help"><strong>Default:</strong></a> off<br />
-     <a href="directive-dict.html#Context"
-    rel="Help"><strong>Context:</strong></a> server config<br />
-     <a href="directive-dict.html#Override"
-    rel="Help"><strong>Override:</strong></a> None<br />
-     <a href="directive-dict.html#Status"
-    rel="Help"><strong>Status:</strong></a> Base<br />
-     <a href="directive-dict.html#Module"
-    rel="Help"><strong>Module:</strong></a> mod_isapi<br />
-     <a href="module-dict.html#Compatibility"
-    rel="Help"><strong>Compatibility:</strong></a> Apache 1.3.13
-    and later, Win32 only 
-
-    <p>Record HSE_APPEND_LOG_PARAMETER requests from ISAPI
-    extensions to the server error log.</p>
-    <hr />
-
-    <h2><a id="isapiappendlogtoquery"
-    name="isapiappendlogtoquery">ISAPIAppendLogToQuery
-    directive</a></h2>
-    <!--%plaintext &lt;?INDEX {\tt ISAPIAppendLogToQuery} directive&gt; -->
-    <a href="directive-dict.html#Syntax"
-    rel="Help"><strong>Syntax:</strong></a> ISAPIAppendLogToQuery
-    on|off<br />
-     <a href="directive-dict.html#Default"
-    rel="Help"><strong>Default:</strong></a> off<br />
-     <a href="directive-dict.html#Context"
-    rel="Help"><strong>Context:</strong></a> server config<br />
-     <a href="directive-dict.html#Override"
-    rel="Help"><strong>Override:</strong></a> None<br />
-     <a href="directive-dict.html#Status"
-    rel="Help"><strong>Status:</strong></a> Base<br />
-     <a href="directive-dict.html#Module"
-    rel="Help"><strong>Module:</strong></a> mod_isapi<br />
-     <a href="module-dict.html#Compatibility"
-    rel="Help"><strong>Compatibility:</strong></a> Apache 1.3.13
-    and later, Win32 only 
-
-    <p>Record HSE_APPEND_LOG_PARAMETER requests from ISAPI
-    extensions to the query field (appended to the CustomLog %q
-    component).</p>
-
-    <p><!--#include virtual="footer.html" -->
-    </p>
-  </body>
-</html>
+URI: mod_isapi.html.fr
+Content-Language: fr
+Content-type: text/html; charset=ISO-8859-1
 
+URI: mod_isapi.html.ko.euc-kr
+Content-Language: ko
+Content-type: text/html; charset=EUC-KR