Mod_fcgid: Read Data Timeout in 120 Seconds Godaddy
Apache Module mod_fcgid
Available Languages: en
Description: | Provides for execution of FastCGI applications |
---|---|
Status: | External |
Module�Identifier: | fcgid_module |
Source�File: | mod_fcgid.c |
Compatibility: | Apache 2.0 and higher |
Summary
Any program assigned to the handler fcgid-script
is candy using the FastCGI protocol; mod_fcgid
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 mod_cgi or mod_cgid modules to launch the program upon each asking. Even so, the programs invoked past mod_fcgid
continue to swallow resources, and so the administrator must counterbalance the impact of invoking a particular programme once per request confronting the resources required to leave a sufficient number of instances running continuously.
The pool of fcgid-invoked programs is shared between all httpd workers. Configuration directives below allow the administrator tune the number of instances of the program that volition run concurrently.
Specific executables are assigned this handler either by having a proper noun containing an extension divers by the AddHandler directive, or with an override using the SetHandler directive (e.1000., for all files in a specific directory such equally cgi-bin).
Some changes have been made in the ASF release of mod_fcgid which can bear upon existing configurations. All documentation refers to new names for the directives. (The onetime names still piece of work but are at present deprecated.) Please read the Upgrade Notes for details.
For an introduction to using CGI scripts with Apache, see the generic tutorial on Dynamic Content with CGI.
mod_fcgid
requires mod_unixd to be loaded before itself in the httpd config.
Upgrade Notes
The following changes accept been made in the ASF release of mod_fcgid and should exist considered when upgrading from the original version by Ryan Pan (Pan Qingfeng).
- All directives have been renamed in order to use a common prefix "Fcgid". Underscores in directive names accept been eliminated in favor of CamelCase. The onetime directive names will even so work but are deprecated. To gear up your configuration y'all can use the sed script build/fixconf.sed. The following table contains old and new directive names:
Old Proper noun New Name BusyScanInterval
FcgidBusyScanInterval
BusyTimeout
FcgidBusyTimeout
DefaultInitEnv
FcgidInitialEnv
DefaultMaxClassProcessCount
FcgidMaxProcessesPerClass
DefaultMinClassProcessCount
FcgidMinProcessesPerClass
ErrorScanInterval
FcgidErrorScanInterval
FastCgiAccessChecker
FcgidAccessChecker
FastCgiAccessCheckerAuthoritative
FcgidAccessCheckerAuthoritative
FastCgiAuthenticator
FcgidAuthenticator
FastCgiAuthenticatorAuthoritative
FcgidAuthenticatorAuthoritative
FastCgiAuthorizer
FcgidAuthorizer
FastCgiAuthorizerAuthoritative
FcgidAuthorizerAuthoritative
FCGIWrapper
FcgidWrapper
IdleScanInterval
FcgidIdleScanInterval
IdleTimeout
FcgidIdleTimeout
IPCCommTimeout
FcgidIOTimeout
IPCConnectTimeout
FcgidConnectTimeout
MaxProcessCount
FcgidMaxProcesses
MaxRequestInMem
FcgidMaxRequestInMem
MaxRequestLen
FcgidMaxRequestLen
MaxRequestsPerProcess
FcgidMaxRequestsPerProcess
OutputBufferSize
FcgidOutputBufferSize
PassHeader
FcgidPassHeader
PHP_Fix_Pathinfo_Enable
FcgidFixPathinfo
ProcessLifeTime
FcgidProcessLifeTime
SharememPath
FcgidProcessTableFile
SocketPath
FcgidIPCDir
SpawnScore
FcgidSpawnScore
SpawnScoreUpLimit
FcgidSpawnScoreUpLimit
TerminationScore
FcgidTerminationScore
TimeScore
FcgidTimeScore
ZombieScanInterval
FcgidZombieScanInterval
Fcgid and Apache ErrorDocument
The core directive ErrorDocument allows the user to specify custom mistake pages for specific HTTP error codes. An important notation must be fabricated: if the fault page is generated past the fastcgi script, mod_fcgid
will pass the response downward to the output filter chain bypassing the Apache's ErrorDocuments. Conversely, if the fault is generated past Apache itself (for example, a HTTP 404 due to a missing resources) then the ErrorDocument fix will be used. This behaviour is the virtually conservative one to interfere as footling every bit possible with the fastcgi'southward response generation logic. mod_proxy
shows the same behaviour merely it offers ProxyErrorOverride to force the use of ErrorDocuments, meanwhile mod_fcgid
does not. A common workaround is to instruct the fcgi script to generate the ErrorDocuments to have full control of the response content.
Examples
Note
The examples assume that mod_fcgid and other necessary modules are loaded into the server already, either built-in or via the LoadModule directive.
Additionally, the case configurations provide full access to the applications using access control directives which piece of work with Apache 2.0 and 2.2. These directives are not appropriate for all environments, and they practise not work for development levels of Apache HTTP Server (Subversion trunk).
The first example is a very simple Perl FastCGI awarding, and its configuration directives. This is typical for FastCGI applications which require no special configuration.
Perl FastCGI awarding - /usr/local/apache/fcgi-bin/foo.pl
while (my $q = CGI::Fast->new) { #!/usr/bin/perl
apply CGI::Fast;
print("Content-Blazon: text/plain\due north\north");
foreach $var (sort(keys(%ENV))) {
$val = $ENV{$var};
$val =~ s|\n|\\n|g;
$val =~ s|"|\\"|g;
print "${var}=\"${val}\"\n";
}
}
Configuration directives
# Customize the next two directives for your requirements. <Directory /usr/local/apache/fcgi-bin/>
SetHandler fcgid-script
Options +ExecCGI
Social club allow,deny
Allow from all
PHP applications are ordinarily configured using the FcgidWrapper
directive and a corresponding wrapper script. The wrapper script tin can be an advisable place to define whatsoever environment variables required past the application, such as PHP_FCGI_MAX_REQUESTS
or anything else. (Surround variables tin also be set with FcgidInitialEnv
, only they then apply to all applications.)
Here is an case that uses a wrapper script to invoke PHP:
PHP application - /usr/local/phpapp/phpinfo.php
<?php
phpinfo();
?>
Configuration directives
# Uncomment the post-obit line if cgi.fix_pathinfo is set to 1 in Alias /phpapp/ /usr/local/phpapp/ # Customize the next two directives for your requirements. # FcgidMaxRequestsPerProcess should be <= PHP_FCGI_MAX_REQUESTS
# The instance PHP wrapper script overrides the default PHP setting.
FcgidMaxRequestsPerProcess 10000
# php.ini:
# FcgidFixPathinfo one
<Location /phpapp/>
AddHandler fcgid-script .php
Options +ExecCGI
FcgidWrapper /usr/local/bin/php-wrapper .php
Order allow,deny
Allow from all
PHP wrapper script - /usr/local/bin/php-wrapper
# Replace with the path to your FastCGI-enabled PHP executable #!/bin/sh
# Set desired PHP_FCGI_* surroundings variables.
# Case:
# PHP FastCGI processes exit later on 500 requests past default.
PHP_FCGI_MAX_REQUESTS=10000
export PHP_FCGI_MAX_REQUESTS
exec /usr/local/bin/php-cgi
Special PHP considerations
Past default, PHP FastCGI processes exit after handling 500 requests, and they may exit after this module has already connected to the application and sent the next request. When that occurs, an error will be logged and 500 Internal Server Fault
will be returned to the client. This PHP behavior tin exist disabled past setting PHP_FCGI_MAX_REQUESTS
to 0, simply that can be a problem if the PHP awarding leaks resource. Alternatively, PHP_FCGI_MAX_REQUESTS
tin exist set to a much higher value than the default to reduce the frequency of this problem. FcgidMaxRequestsPerProcess
can be ready to a value less than or equal to PHP_FCGI_MAX_REQUESTS
to resolve the problem.
PHP kid process management (PHP_FCGI_CHILDREN
) should always exist disabled with mod_fcgid, which will only route one asking at a time to application processes it has spawned; thus, any child processes created past PHP will not exist used effectively. (Additionally, the PHP kid processes may not be terminated properly.) By default, and with the environment variable setting PHP_FCGI_CHILDREN=0
, PHP kid process management is disabled.
The popular APC opcode enshroud for PHP cannot share a cache between PHP FastCGI processes unless PHP manages the child processes. Thus, the effectiveness of the cache is limited with mod_fcgid; concurrent PHP requests volition employ different opcode caches.
Procedure Management
mod_fcgid has several types of controls which affect the creation of additional awarding processes:
Type of control | Directive |
---|---|
global limit on number of processes | FcgidMaxProcesses |
limit on number of processes per application | FcgidMaxProcessesPerClass |
limit on rate of spawning new awarding processes | FcgidSpawnScoreUpLimit and other score-related directives |
mod_fcgid has several types of controls which affect the termination of existing application processes:
Type of control | Directive |
---|---|
termination after an idle period | FcgidIdleTimeout |
termination afterwards information technology handles a certain number of requests | FcgidMaxRequestsPerProcess |
termination after a certain lifetime | FcgidProcessLifetime |
Several of the directives control processing for a process course. A process class is the set of processes which were started with the same executable file and share certain other characteristics such as virtual host and identity. Ii commands which are links to or otherwise refer to the same executable file share the same procedure course.
Annotation
Sure settings or other concepts that depend on the virtual host, such as FcgidInitialEnv
or procedure classes, distinguish betwixt virtual hosts only if they accept singled-out server names. (Meet the ServerName
documentation for more information.) In the case of FcgidInitialEnv
, if ii virtual hosts have the same server proper noun but unlike environments as defined past FcgidInitialEnv
, the surroundings used for a particular request volition exist that defined for the virtual host of the request that acquired the FastCGI process to be started.
Information most each process will be displayed in the mod_status
server-status page.
FcgidAccessChecker Directive
Description: | full path to FastCGI access checker |
---|---|
Syntax: | FcgidAccessChecker control |
Default: | none |
Context: | directory, .htaccess |
Override: | FileInfo |
Condition: | External |
Module: | mod_fcgid |
Access checking or, more formally, access control, is a procedure which verifies that the client is allowed to admission a resource, using some mechanism other than hallmark and authorization.
Primal environment variables passed to the application for admission checking are:
-
FCGI_APACHE_ROLE
- fix to
ACCESS_CHECKER
; by checking the electric current function, the same FastCGI application can handle multiple stages of request processing
The application must output a Status
line to betoken the result of the check.
Alarm
Before ii.iii.vi, only one FastCGI application of any blazon (AAA or handler) tin can be used for a particular request URI. Otherwise, the incorrect FastCGI awarding may be invoked for one or more than phases of request processing.
Directive
Description: | Set up to 'off' to let access control to be passed along to lower modules upon failure |
---|---|
Syntax: | FcgidAccessCheckerAuthoritative On|Off |
Default: | FcgidAccessCheckerAuthoritative On |
Context: | directory, .htaccess |
Override: | FileInfo |
Condition: | External |
Module: | mod_fcgid |
This directive controls whether or not other access checkers are immune to run when this module has an access checker configured and it fails a request. If this directive is On
(default) and a FastCGI access checker returns a failure status, a failure is returned to the client without giving other access checkers a chance to allow admission. If this directive is Off
, other access checkers will be called.
FcgidAuthenticator Directive
Description: | full path to FastCGI authenticator |
---|---|
Syntax: | FcgidAuthenticator command |
Default: | none |
Context: | directory, .htaccess |
Override: | FileInfo |
Condition: | External |
Module: | mod_fcgid |
Authentication is the procedure which verifies that the user is who they claim they are. This directive specifies the full path to a FastCGI awarding which will handle hallmark for a particular context, such as a directory.
Primal environs variables passed to the application on authentication are:
-
REMOTE_USER
- set up to the user id of the customer
-
REMOTE_PASSWD
- fix to the plain text password provided by the client
-
FCGI_APACHE_ROLE
- set to
AUTHENTICATOR
; by checking the current part, the same FastCGI application can handle multiple stages of request processing
The application must output a Status
line to indicate the outcome of authentication.
Alarm
Before 2.3.6, only ane FastCGI application of whatsoever type (AAA or handler) can exist used for a item asking URI. Otherwise, the wrong FastCGI application may be invoked for 1 or more phases of request processing.
FcgidAuthenticatorAuthoritative Directive
Clarification: | Set to 'off' to permit hallmark to be passed forth to lower modules upon failure |
---|---|
Syntax: | FcgidAuthenticatorAuthoritative On|Off |
Default: | FcgidAuthenticatorAuthoritative On |
Context: | directory, .htaccess |
Override: | FileInfo |
Status: | External |
Module: | mod_fcgid |
This directive controls whether or not other authenticators are allowed to run when this module has an authenticator configured and information technology fails a request. If this directive is On
(default) and a FastCGI authenticator returns a failure status, a failure is returned to the client without giving other authenticators a adventure to validate the customer identity. If this directive is Off
, other authenticators will exist called.
FcgidAuthorizer Directive
Description: | full path to FastCGI authorizer |
---|---|
Syntax: | FcgidAuthorizer command |
Default: | none |
Context: | directory, .htaccess |
Override: | FileInfo |
Status: | External |
Module: | mod_fcgid |
Authorization is the procedure which verifies that the user is allowed to access a particular resources. This directive specifies the full path to a FastCGI application which volition handle authorization for a detail context, such as a directory.
Key environment variables passed to the application on potency are:
-
REMOTE_USER
- set to the user id of the client, which has already been authenticated
-
FCGI_APACHE_ROLE
- set to
AUTHORIZER
; by checking the current office, the same FastCGI application can handle multiple stages of request processing
The application must output a Status
line to betoken the consequence of dominance.
Warning
Before ii.3.half dozen, only one FastCGI awarding of any type (AAA or handler) tin be used for a particular asking URI. Otherwise, the wrong FastCGI awarding may be invoked for one or more than phases of request processing.
FcgidAuthorizerAuthoritative Directive
Clarification: | Fix to 'off' to allow authorization to be passed along to lower modules upon failure |
---|---|
Syntax: | FcgidAuthorizerAuthoritative On|Off |
Default: | FcgidAuthorizerAuthoritative On |
Context: | directory, .htaccess |
Override: | FileInfo |
Condition: | External |
Module: | mod_fcgid |
This directive controls whether or not other authorizers are allowed to run when this module has an authorizer configured and it fails a request. If this directive is On
(default) and a FastCGI authorizer returns a failure status, a failure is returned to the customer without giving other authorizer a gamble to access the resource. If this directive is Off
, other authorizers volition exist called.
FcgidBusyTimeout Directive
Description: | a FastCGI application will be killed after handling a request for FcgidBusyTimeout |
---|---|
Syntax: | FcgidBusyTimeout seconds |
Default: | FcgidBusyTimeout 300 |
Context: | server config, virtual host |
Status: | External |
Module: | mod_fcgid |
This is the maximum time limit for request handling. If a FastCGI request does non complete within FcgidBusyTimeout seconds, it will exist subject area to termination. Considering the check is performed at the interval divers past FcgidBusyScanInterval
, request handling may be immune to continue for a longer period of fourth dimension.
The purpose of this directive is to finish hung applications. The default timeout may need to be increased for applications that can take longer to process the request.
FcgidCmdOptions Directive
Description: | Ready processing options for a FastCGI control |
---|---|
Syntax: | FcgidCmdOptions command pick [choice] ... |
Context: | server config, virtual host |
Condition: | External |
Module: | mod_fcgid |
This directive allows processing options to be specified for a specific command spawned by mod_fcgid. Each option for the command corresponds to another directive that commonly applies to all commands started within a particular context. If a detail option is not specified on this directive, the default will be used.
The following table provides a list of options and respective directives:
Option proper name and syntax | Respective directive |
---|---|
ConnectTimeout seconds | FcgidConnectTimeout |
IdleTimeout seconds | FcgidIdleTimeout |
InitialEnv proper noun[=value] | FcgidInitialEnv |
IOTimeout seconds | FcgidIOTimeout |
MaxProcesses value | FcgidMaxProcessesPerClass |
MaxProcessLifeTime seconds | FcgidProcessLifeTime |
MaxRequestsPerProcess value | FcgidMaxRequestsPerProcess |
MinProcesses value | FcgidMinProcessesPerClass |
Multiple environs variables are defined by repeating the InitialEnv
option.
Example
FcgidCmdOptions /usr/local/bin/wrapper \
InitialEnv MAX_REQUESTS=2000 \
MaxRequestsPerProcess 2000 \
IOTimeout 90
When /usr/local/bin/wrapper
is spawned, its initial environment contains the MAX_REQUESTS=2000
environment variable setting; additionally, mod_fcgid will end information technology after it has handled 2000 requests, and I/O operations volition fourth dimension out after ninety seconds. Directives corresponding to other options, such as FcgidIdleTimeout
or FcgidProcessLifeTime
, will be ignored for this command; defaults will be used for options not specified on FcgidCmdOptions
.
FcgidConnectTimeout Directive
Description: | Connect timeout to FastCGI server |
---|---|
Syntax: | FcgidConnectTimeout seconds |
Default: | FcgidConnectTimeout 3 |
Context: | server config, virtual host |
Status: | External |
Module: | mod_fcgid |
This is the maximum catamenia of time the module will wait while trying to connect to a FastCGI awarding on Windows. (This directive is not respected on Unix, where AF_UNIX defaults will apply.)
This setting will apply to all applications spawned for this server or virtual host. Use FcgidCmdOptions
to utilise this setting to a unmarried awarding.
FcgidErrorScanInterval Directive
Description: | scan interval for exited procedure |
---|---|
Syntax: | FcgidErrorScanInterval seconds |
Default: | FcgidErrorScanInterval 3 |
Context: | server config |
Status: | External |
Module: | mod_fcgid |
This is the interval at which the module will handle awaiting process termination. Termination is awaiting for any processes which have exceeded FcgidIdleTimeout
or FcgidProcessLifeTime
.
Unix: mod_fcgid will terminate such processes with SIGTERM; if the process is withal agile during the adjacent browse, the process volition exist terminated with SIGKILL. Thus, this directive controls the corporeality of time for orderly procedure terminate earlier being forcibly killed.
FcgidFixPathinfo Directive
Clarification: | Mirror the PHP cgi.fix_pathinfo setting |
---|---|
Syntax: | FcgidFixPathinfo 1 |
Default: | FcgidFixPathinfo 0 |
Context: | server config |
Status: | External |
Module: | mod_fcgid |
This directive enables special SCRIPT_NAME
processing which allows PHP to provide additional path information. The setting of FcgidFixPathinfo
should mirror the cgi.fix_pathinfo
setting in php.ini
.
FcgidIdleTimeout Directive
Description: | An idle FastCGI application will be killed after FcgidIdleTimeout |
---|---|
Syntax: | FcgidIdleTimeout seconds |
Default: | FcgidIdleTimeout 300 |
Context: | server config, virtual host |
Status: | External |
Module: | mod_fcgid |
Application processes which take not handled a asking for this period of time will exist terminated, if the number of processses for the course exceeds FcgidMinProcessesPerClass
. A value of 0
disables the check.
This idle timeout check is performed at the frequency of the configured FcgidIdleScanInterval
.
This setting will apply to all applications spawned for this server or virtual host. Use FcgidCmdOptions
to employ this setting to a single application.
FcgidInitialEnv Directive
Description: | an surround variable proper name and optional value to laissez passer to FastCGI. |
---|---|
Syntax: | FcgidInitialEnv proper name [ value ] |
Default: | none |
Context: | server config, virtual host |
Status: | External |
Module: | mod_fcgid |
Use FcgidInitialEnv
to define environment variables to pass to the FastCGI awarding. This directive tin can exist used multiple times.
This setting volition apply to all applications spawned for this server or virtual host. Apply FcgidCmdOptions
to apply this setting to a single application.
FcgidIOTimeout Directive
Description: | Communication timeout to FastCGI server |
---|---|
Syntax: | FcgidIOTimeout seconds |
Default: | FcgidIOTimeout forty |
Context: | server config, virtual host |
Status: | External |
Module: | mod_fcgid |
This is the maximum catamenia of fourth dimension the module will wait while trying to read from or write to a FastCGI awarding.
Note
The FastCGI awarding must begin generating the response within this flow of time. Increase this directive as necessary to handle applications which take a relatively long catamenia of time to respond.
This setting will apply to all applications spawned for this server or virtual host. Utilize FcgidCmdOptions
to utilize this setting to a single awarding.
FcgidIPCDir Directive
Description: | directory for AF_UNIX sockets (Unix) or pipes (Windows) |
---|---|
Syntax: | FcgidIPCDir pathname |
Default: | FcgidIPCDir logs/fcgidsock |
Context: | server config |
Status: | External |
Module: | mod_fcgid |
This module uses AF_UNIX sockets or named pipes, depending on the platform, to communicate with FastCGI applications. This directive specifies the directory where those sockets or named pipes will exist created.
FcgidMaxProcessesPerClass Directive
Description: | Max process count of one class of FastCGI awarding |
---|---|
Syntax: | FcgidMaxProcessesPerClass value |
Default: | FcgidMaxProcessesPerClass 100 |
Context: | server config, virtual host |
Condition: | External |
Module: | mod_fcgid |
This directive sets the maximum number of processes that tin can be started for each procedure grade.
This setting volition apply to all applications spawned for this server or virtual host. Use FcgidCmdOptions
to apply this setting to a unmarried awarding.
FcgidMaxRequestInMem Directive
Description: | maximum size of a request which will be held in retention |
---|---|
Syntax: | FcgidMaxRequestInMem bytes |
Default: | FcgidMaxRequestInMem 65536 |
Context: | server config, virtual host |
Condition: | External |
Module: | mod_fcgid |
This module reads the unabridged request trunk from the client before sending it to the application. Normally the request body will be stored in memory. Once the amount of request body read from the client exceeds FcgidMaxRequestInMem
bytes, the remainder of the request body will be stored in a temporary file.
FcgidMaxRequestLen Directive
Clarification: | maximum HTTP asking length |
---|---|
Syntax: | FcgidMaxRequestLen bytes |
Default: | FcgidMaxRequestLen 131072 |
Context: | server config, virtual host |
Condition: | External |
Module: | mod_fcgid |
If the size of the request body exceeds this corporeality, the request will fail with 500 Server Fault
.
Administrators should change this to an appropriate value for their site based on awarding requirements.
Warning
Before 2.iii.half dozen, this defaulted to 1GB. Well-nigh users of before versions should use this directive to set a more than reasonable limit.
See likewise
-
FcgidMaxRequestInMem
FcgidMaxRequestsPerProcess Directive
Description: | Max requests handled by each FastCGI application |
---|---|
Syntax: | FcgidMaxRequestsPerProcess value |
Default: | FcgidMaxRequestsPerProcess 0 |
Context: | server config, virtual host |
Status: | External |
Module: | mod_fcgid |
FastCGI awarding processes will be terminated after treatment the specified number of requests. A value of 0
disables the check.
Note
A value of -1
is currently accepted for ease of migration for existing configurations. It is treated the same every bit 0
.
Sure applications, notably PHP as FastCGI, accept their ain facility for terminating after handling a certain number of requests. This directive can be used to avert sending additional requests to the awarding after it has handled its limit.
Note
If this is set such that frequent process creation will be required, you will probable need to adjust FcgidSpawnScoreUpLimit
or other score-related directives to allow more than frequent process creation.
This setting will apply to all applications spawned for this server or virtual host. Apply FcgidCmdOptions
to apply this setting to a single awarding.
FcgidMinProcessesPerClass Directive
Clarification: | Min process count of one class of FastCGI awarding |
---|---|
Syntax: | FcgidMinProcessesPerClass value |
Default: | FcgidMinProcessesPerClass 3 |
Context: | server config, virtual host |
Status: | External |
Module: | mod_fcgid |
This directive sets the minimum number of processes that will exist retained in a process class afterwards finishing requests.
This setting volition use to all applications spawned for this server or virtual host. Use FcgidCmdOptions
to apply this setting to a single application.
FcgidPassHeader Directive
Description: | Header proper noun which will be passed to FastCGI equally surround variable. |
---|---|
Syntax: | FcgidPassHeader proper noun |
Default: | none |
Context: | server config, virtual host |
Status: | External |
Module: | mod_fcgid |
This directive specifies the name of a request header which will exist passed to the FastCGI awarding equally an environs variable. The name of the surroundings variable is derived from the value specified on this directive, as discussed below:
The legacy behavior is to utilize the value specified on this directive equally the environment variable name, converting hyphens to underscores. No case conversion is performed.
Beginning with release 2.3.6, an boosted surround variable is created. The value specified on this directive is converted to upper instance, prefixed with HTTP_
, and hyphens are converted to underscores.
Note
Near request headers are already available to the application as environment variables, and generally are prefixed with HTTP_
. (Notable exceptions are Content-type
and Content-length
, which practise not have the HTTP_
prefix.) Thus, this directive is only required for request headers that are purposefully omitted, such equally Authorization
and Proxy-Authorization
. Only pass these asking headers if absolutely required.
FcgidProcessLifeTime Directive
Description: | maximum FastCGI application process lifetime |
---|---|
Syntax: | FcgidProcessLifeTime seconds |
Default: | FcgidProcessLifeTime 3600 |
Context: | server config, virtual host |
Status: | External |
Module: | mod_fcgid |
Idle awarding processes which have existed for greater than this fourth dimension will be terminated, if the number of processses for the class exceeds FcgidMinProcessesPerClass
. A value of 0
disables the check.
This process lifetime check is performed at the frequency of the configured FcgidIdleScanInterval
.
This setting volition apply to all applications spawned for this server or virtual host. Utilize FcgidCmdOptions
to apply this setting to a single application.
FcgidSpawnScoreUpLimit Directive
Description: | Maximum value of the process activity score which allows a spawn to occur |
---|---|
Syntax: | FcgidSpawnScoreUpLimit value |
Default: | FcgidSpawnScoreUpLimit x |
Context: | server config |
Status: | External |
Module: | mod_fcgid |
A process action score is maintained for each FastCGI awarding; the score is used to control the rate of spawning in order to avoid placing too much load on the organisation, particularly for applications that are repeatedly exiting abnormally.
The value of FcgidSpawnScore
is added to the score for every spawned awarding process. The value of FcgidTerminationScore
is added to the score for every terminated application process. The value of FcgidTimeScore
is subtracted from the score every second.
When the current score is college than the value of FcgidSpawnScoreUpLimit
, no additional application processes will be spawned; subsequent requests must wait until an existing process is gratis or until the score decreases below the limit.
If the limit is reached under normal load, it may non be sufficient to simply increase the limit, equally that would but delay the corporeality of time before the limit is reached once more. Subtract the value of FcgidSpawnScore
and/or FcgidTerminationScore
, or increase the value of FcgidTimeScore
, to allow a higher rate of spawning.
FcgidTerminationScore Directive
Description: | Each terminated process adds this value to the process activity score. |
---|---|
Syntax: | FcgidTerminationScore value |
Default: | FcgidTerminationScore 2 |
Context: | server config |
Status: | External |
Module: | mod_fcgid |
Lower values of this directive increase the immune spawn rate. Negative values can be useful in some circumstances, such as assuasive process replacement without increasing the score.
Refer to the FcgidSpawnScoreUpLimit
directive for more information.
FcgidWin32PreventOrphans Directive
Description: | Task Command orphan prevention for fcgi workers. |
---|---|
Syntax: | FcgidWin32PreventOrphans On|Off |
Default: | FcgidWin32PreventOrphans Off |
Context: | server config |
Condition: | External |
Module: | mod_fcgid |
Uses Chore Control Objects on Windows, only, to enforce shutdown of all fcgi processes created by the httpd worker when the httpd worker has been terminated. Processes terminated in this way do not have the opportunity to clean up gracefully, complete pending deejay writes, or similar closure transactions, therefore this beliefs is experimental and disabled, by default.
FcgidWrapper Directive
Clarification: | The CGI wrapper setting |
---|---|
Syntax: | FcgidWrapper command [ suffix ] [ virtual ] |
Default: | none |
Context: | server config, virtual host, directory, .htaccess |
Override: | FileInfo |
Condition: | External |
Module: | mod_fcgid |
The given command is used to spawn FCGI server processes. If this directive is not used, the file pointed to by the request URL will exist used instead. Options for the command tin be included using quotation marks surrounding the command and options.
The optional suffix
argument restricts the use of this FCGI server to all URLs with the given exact path suffix. A suffix needs to showtime with '.
'.
The virtual
flag signals that in that location will be no bank check whether the request URL really points to an existing file. The only file which needs to exist is the wrapper itself.
The directive can exist used multiple times. A wrapper defined without a suffix is used every bit a default in case no suffix matches.
Source: https://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html
0 Response to "Mod_fcgid: Read Data Timeout in 120 Seconds Godaddy"
Post a Comment