blob: 535443441e92e87bd66000fe159743508af10504 [file] [log] [blame]
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<modulesynopsis metafile="mod_fcgid.xml.meta">
<name>mod_fcgid</name>
<description>Provides for execution of fastcgi applications</description>
<status>External</status> <!-- For now... -->
<sourcefile>mod_fcgid.c</sourcefile>
<identifier>fcgid_module</identifier>
<compatibility>Apache 2.0 and higher</compatibility>
<summary>
<p>Any program assigned to the handler <code>fcgid-script</code> is processed
using the FastCGI protocol; <module>mod_fcgid</module> starts a sufficient
number instances of the program to handle concurrent requests, and these
programs remain running to handle further incoming requests. This is
significantly faster than using the default <module>mod_cgi</module> or
<module>mod_cgid</module> modules to launch the program upon each request.
However, the programs invoked by <module>mod_fcgid</module> continue to
consume resources, so the administrator must weigh the impact of invoking
a particular program once per request against the resources required to
leave a sufficient number of instances running continuously.</p>
<p>The pool of fcgid-invoked programs is shared between all httpd workers.
Configuration directives below let the administrator tune the number of
instances of the program that will run concurrently.</p>
<p>Specific executables are assigned this handler either by having a name
containing an extension defined by the
<directive module="mod_mime">AddHandler</directive> directive, or with an
override using the <directive module="mod_mime">SetHandler</directive>
directive (e.g., for all files in a specific directory such as cgi-bin).</p>
<p>For an introduction to using CGI scripts with Apache, see
the generic tutorial on <a href="../howto/cgi.html">Dynamic Content
With CGI</a>.</p>
</summary>
<!-- References to other documents or directives -->
<seealso><a href="../howto/cgi.html">Dynamic Content With CGI</a></seealso>
<seealso><module>mod_cgi</module></seealso>
<seealso><module>mod_cgid</module></seealso>
<directivesynopsis>
<name>IdleTimeout</name>
<description>An idle fastcgi application will be killed after IdleTimeout</description>
<syntax>IdleTimeout <em>seconds</em></syntax>
<default>IdleTimeout 300</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>IdleScanInterval</name>
<description>scan interval for idle timeout process</description>
<syntax>IdleScanInterval <em>seconds</em></syntax>
<default>IdleScanInterval 120</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>BusyTimeout</name>
<description>a fastcgi application will be killed after handling a request for BusyTimeout</description>
<syntax>BusyTimeout <em>seconds</em></syntax>
<default>BusyTimeout 300</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>BusyScanInterval</name>
<description>scan interval for busy timeout process</description>
<syntax>IdleScanInterval <em>seconds</em></syntax>
<default>IdleScanInterval 120</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>ErrorScanInterval</name>
<description>scan interval for exited process</description>
<syntax>ErrorScanInterval <em>seconds</em></syntax>
<default>ErrorScanInterval 3</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>ZombieScanInterval</name>
<description>scan interval for zombie process</description>
<syntax>ZombieScanInterval <em>seconds</em></syntax>
<default>ZombieScanInterval 3</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>ProcessLifeTime</name>
<description>fastcgi application lifetime</description>
<syntax>ProcessLifeTime <em>seconds</em></syntax>
<default>ProcessLifeTime 3600</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>SocketPath</name>
<description>fastcgi socket file path</description>
<syntax>SocketPath <em>pathname</em></syntax>
<default>SocketPath logs/fcgidsock</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>SharememPath</name>
<description>fastcgi share memory file path</description>
<syntax>SharememPath <em>pathname</em></syntax>
<default>SharememPath logs/fcgid_shm</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>SpawnScoreUpLimit</name>
<description>Spawn score up limit</description>
<syntax>SpawnScoreUpLimit <em>value</em></syntax>
<default>SpawnScoreUpLimit 10</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>SpawnScore</name>
<description>Score of spawn</description>
<syntax>SpawnScore <em>value</em></syntax>
<default>SpawnScore 1</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>TimeScore</name>
<description>Score of passage of time (in seconds)</description>
<syntax>TimeScore <em>seconds</em></syntax>
<default>TimeScore 1</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>TerminationScore</name>
<description>Score of termination</description>
<syntax>TerminationScore <em>value</em></syntax>
<default>TerminationScore 2</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>MaxProcessCount</name>
<description>Max total process count</description>
<syntax>MaxProcessCount <em>value</em></syntax>
<default>MaxProcessCount 1000</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>DefaultMaxClassProcessCount</name>
<description>Max process count of one class of fastcgi application</description>
<syntax>DefaultMaxClassProcessCount <em>value</em></syntax>
<default>DefaultMaxClassProcessCount 100</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>DefaultMinClassProcessCount</name>
<description>Min process count of one class of fastcgi application</description>
<syntax>DefaultMinClassProcessCount <em>value</em></syntax>
<default>DefaultMinClassProcessCount 3</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>OutputBufferSize</name>
<description>CGI output buffer size</description>
<syntax>OutputBufferSize <em>bytes</em></syntax>
<default>OutputBufferSize 65536</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>IPCConnectTimeout</name>
<description>Connect timeout to fastcgi server</description>
<syntax>IPCConnectTimeout <em>seconds</em></syntax>
<default>IPCConnectTimeout 3</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>IPCCommTimeout</name>
<description>Communication timeout to fastcgi server</description>
<syntax>IPCCommTimeout <em>seconds</em></syntax>
<default>IPCCommTimeout 40</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>MaxRequestLen</name>
<description>Max HTTP request length in bytes</description>
<syntax>MaxRequestLen <em>bytes</em></syntax>
<default>MaxRequestLen 1073741824</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>MaxRequestInMem</name>
<description>The part of HTTP request which greater than this limit will swap to disk</description>
<syntax>MaxRequestInMem <em>bytes</em></syntax>
<default>MaxRequestInMem 65536</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>MaxRequestsPerProcess</name>
<description>Max requests handled by each fastcgi application</description>
<syntax>MaxRequestsPerProcess <em>value</em></syntax>
<default>MaxRequestsPerProcess -1</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>DefaultInitEnv</name>
<description>an environment variable name and optional value to pass to FastCGI.</description>
<syntax>DefaultInitEnv <em>name</em> [ <em>value</em> ]</syntax>
<default><em>none</em></default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>PassHeader</name>
<description>Header name which will be passed to FastCGI as environment variable.</description>
<syntax>PassHeader <em>name</em></syntax>
<default><em>none</em></default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>PHP_Fix_Pathinfo_Enable</name>
<description>Set 1, if cgi.fix_pathinfo=1 in php.ini</description>
<syntax>PHP_Fix_Pathinfo_Enable 1</syntax>
<default>PHP_Fix_Pathinfo_Enable 0</default>
<contextlist><context>server config</context> <context>virtual host</context></contextlist>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>FCGIWrapper</name>
<description>The CGI wrapper setting</description>
<syntax>FCGIWrapper <em>command</em> [ <em>type</em> ]</syntax>
<default><em>none</em></default>
<contextlist>
<context>server config</context> <context>virtual host</context>
<context>directory</context> <context>.htaccess</context>
</contextlist>
<override>FileInfo</override>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>FastCgiAuthenticator</name>
<description>a absolute authenticator file path</description>
<syntax>FastCgiAuthenticator <em>command</em></syntax>
<default><em>none</em></default>
<contextlist><context>directory</context> <context>.htaccess</context></contextlist>
<override>FileInfo</override>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>FastCgiAuthenticatorAuthoritative</name>
<description>Set to 'off' to allow authentication to be passed along to lower modules upon failure</description>
<syntax>FastCgiAuthenticatorAuthoritative <em>On|Off</em></syntax>
<default>FastCgiAuthenticatorAuthoritative On</default>
<contextlist><context>directory</context> <context>.htaccess</context></contextlist>
<override>FileInfo</override>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>FastCgiAuthorizer</name>
<description>a absolute authorizer file path</description>
<syntax>FastCgiAuthorizer <em>command</em></syntax>
<default><em>none</em></default>
<contextlist><context>directory</context> <context>.htaccess</context></contextlist>
<override>FileInfo</override>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>FastCgiAuthorizerAuthoritative</name>
<description>Set to 'off' to allow authorization to be passed along to lower modules upon failure</description>
<syntax>FastCgiAuthorizerAuthoritative <em>On|Off</em></syntax>
<default>FastCgiAuthorizerAuthoritative On</default>
<contextlist><context>directory</context> <context>.htaccess</context></contextlist>
<override>FileInfo</override>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>FastCgiAccessChecker</name>
<description>a absolute access checker file path</description>
<syntax>FastCgiAccessChecker <em>command</em></syntax>
<default><em>none</em></default>
<contextlist><context>directory</context> <context>.htaccess</context></contextlist>
<override>FileInfo</override>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>FastCgiAccessCheckerAuthoritative</name>
<description>Set to 'off' to allow access control to be passed along to lower modules upon failure</description>
<syntax>FastCgiAccessCheckerAuthoritative <em>On|Off</em></syntax>
<default>FastCgiAccessCheckerAuthoritative On</default>
<contextlist><context>directory</context> <context>.htaccess</context></contextlist>
<override>FileInfo</override>
<usage>
<p>TODO</p>
</usage>
</directivesynopsis>
</modulesynopsis>