Apache Reference Manual (9)

发表于:2007-07-01来源:作者:点击数: 标签:
PidFile directive Syntax: PidFile filename Default: PidFile logs/httpd.pid Context: server config Status: core The PidFile directive sets the file to which the server records the process id of the daemon. If the filename does not begin with
PidFile directive
Syntax: PidFile filename
Default: PidFile logs/httpd.pid
Context: server config
Status: core
The PidFile directive sets the file to which the server records the process id of the daemon. If the filename does not begin with a slash (/) then it is assumed to be relative to the ServerRoot. The PidFile is only used in standalone mode.

It is often useful to be able to send the server a signal, so that it closes and then reopens its ErrorLog and TransferLog, and re-reads its configuration files. This is done by sending a SIGHUP (kill -1) signal to the process id listed in the PidFile.

The PidFile is subject to the same warnings about log file placement and security.



--------------------------------------------------------------------------------

Port directive
Syntax: Port number
Default: Port 80
Context: server config
Status: core
Number is a number from 0 to 65535; some port numbers (especially below 1024) are reserved for particular protocols. See /etc/services for a list of some defined ports; the standard port for the http protocol is 80.

The Port directive has two behaviors, the first of which is necessary for NCSA backwards compatibility (and which is confusing in the context of Apache).


In the absence of any Listen or BindAddress directives specifying a port number, a Port directive given in the "main server" (i.e., outside any <VirtualHost> section) sets the.network port on which the server listens. If there are any Listen or BindAddress directives specifying :number then Port has no effect on what address the server listens at.
The Port directive sets the SERVER_PORT environment variable (for CGI and SSI), and is used when the server must generate a URL that refers to itself (for example when creating an external redirect to itself). This behaviour is modified by UseCanonicalName.
In no event does a Port setting affect what ports a VirtualHost responds on, the VirtualHost directive itself is used for that.
The primary behaviour of Port should be considered to be similar to that of the ServerName directive. The ServerName and Port together specify what you consider to be the canonical address of the server. (See also UseCanonicalName.)

Port 80 is one of Unix@#s special ports. All ports numbered below 1024 are reserved for system use, i.e., regular (non-root) users cannot make use of them; instead they can only use higher port numbers. To use port 80, you must start the server from the root aclearcase/" target="_blank" >ccount. After binding to the port and before accepting requests, Apache will change to a low privileged user as set by the User directive.

If you cannot use port 80, choose any other unused port. Non-root users will have to choose a port number higher than 1023, such as 8000.

SECURITY: if you do start the server as root, be sure not to set User to root. If you run the server as root whilst handling connections, your site may be open to a major security attack.



--------------------------------------------------------------------------------

require directive
Syntax: require entity-name entity entity...
Context: directory, .htaccess
Override: AuthConfig
Status: core
This directive selects which authenticated users can access a directory. The allowed syntaxes are:

require user userid userid ...
Only the named users can access the directory.


require group group-name group-name ...
Only users in the named groups can access the directory.


require valid-user
All valid users can access the directory.

Require must be accompanied by AuthName and AuthType directives, and directives such as AuthUserFile and AuthGroupFile (to define users and groups) in order to work correctly. Example:

AuthType Basic
AuthName "Restricted Directory"
AuthUserFile /web/users
AuthGroupFile /web/groups
require group admin

Access controls which are applied in this way are effective for all methods. This is what is normally desired. If you wish to apply access controls only to specific methods, while leaving other methods unprotected, then place the require statement into a <Limit> section

See also Satisfy and mod_access.


--------------------------------------------------------------------------------

ResourceConfig directive
Syntax: ResourceConfig filename
Default: ResourceConfig conf/srm.conf
Context: server config, virtual host
Status: core
The server will read this file for more directives after reading the httpd.conf file. Filename is relative to the ServerRoot. This feature can be disabled using:

ResourceConfig /dev/null
Historically, this file contained most directives except for server configuration directives and <Directory> sections; in fact it can now contain any server directive allowed in the server config context.
See also AccessConfig.



--------------------------------------------------------------------------------

RLimitCPU directive
Syntax: RLimitCPU # or @#max@# [# or @#max@#]
Default: Unset; uses operating system defaults
Context: server config, virtual host
Status: core
Compatibility: RLimitCPU is only available in Apache 1.2 and later
Takes 1 or 2 parameters. The first parameter sets the soft resource limit for all processes and the second parameter sets the maximum resource limit. Either parameter can be a number, or max to indicate to the server that the limit should be set to the maximum allowed by the operating system configuration. Raising the maximum resource limit requires that the server is running as root, or in the initial startup phase.

This applies to processes forked off from Apache children servicing requests, not the Apache children themselves. This includes CGI scripts and SSI exec commands, but not any processes forked off from the Apache parent such as piped logs.

CPU resource limits are expressed in seconds per process.

See also RLimitMEM or RLimitNPROC.



--------------------------------------------------------------------------------

RLimitMEM directive
Syntax: RLimitMEM # or @#max@# [# or @#max@#]
Default: Unset; uses operating system defaults
Context: server config, virtual host
Status: core
Compatibility: RLimitMEM is only available in Apache 1.2 and later
Takes 1 or 2 parameters. The first parameter sets the soft resource limit for all processes and the second parameter sets the maximum resource limit. Either parameter can be a number, or max to indicate to the server that the limit should be set to the maximum allowed by the operating system configuration. Raising the maximum resource limit requires that the server is running as root, or in the initial startup phase.

This applies to processes forked off from Apache children servicing requests, not the Apache children themselves. This includes CGI scripts and SSI exec commands, but not any processes forked off from the Apache parent such as piped logs.

Memory resource limits are expressed in bytes per process.

See also RLimitCPU or RLimitNPROC.



--------------------------------------------------------------------------------

RLimitNPROC directive
Syntax: RLimitNPROC # or @#max@# [# or @#max@#]
Default: Unset; uses operating system defaults
Context: server config, virtual host
Status: core
Compatibility: RLimitNPROC is only available in Apache 1.2 and later
Takes 1 or 2 parameters. The first parameter sets the soft resource limit for all processes and the second parameter sets the maximum resource limit. Either parameter can be a number, or max to indicate to the server that the limit should be set to the maximum allowed by the operating system configuration. Raising the maximum resource limit requires that the server is running as root, or in the initial startup phase.

This applies to processes forked off from Apache children servicing requests, not the Apache children themselves. This includes CGI scripts and SSI exec commands, but not any processes forked off from the Apache parent such as piped logs.

Process limits control the number of processes per user.

Note: If CGI processes are not running under userids other than the web server userid, this directive will limit the number of processes that the server itself can create. Evidence of this situation will be indicated by cannot fork messages in the error_log.

See also RLimitMEM or RLimitCPU.

--------------------------------------------------------------

原文转自:http://www.ltesting.net