/ 中存储网

Apache服务器的配置文件http.conf中文解释说明

2014-03-14 16:59:01 来源:itjs.cn
### Section 1: Global Environment

#

# The directives in this section affect the overall operation of Apache,

# such as the number of concurrent requests it can handle or where it

# can find its configuration files.

# #

# ServerType 可取值 inetd 或 standalone.  Inetd 只适用于Unix平台

#

ServerType standalone

#

# ServerRoot: 目录树的根结点。服务器配置、出错信息、日志文件都保存在根目录#下。

#

# 不要再目录末尾加"/"

#

ServerRoot "/usr/local/apache"

#

# Pidfile: 服务器用于记录启动时进程ID的文件。

#

PidFile logs/httpd.pid #

# ScoreBoardfile: 用于保存内部服务器进程信息的文件。

# 并非必须。 但是如果指定了(此文件当运行Apache时生成)

# 那么必须确保没有两个Apache进程共享同一个scoreboard文件。

#

ScoreBoardFile logs/apache_runtime_status

#

# 在标准配置下,服务器将顺序读取 httpd.conf(此文件可通过命令行中-f参数指定#),

# srm.conf 和 access.conf。

# 目前后两个文件是空的。为了简单起见,建议将所有的标识放在一个文件中。  

# 以下两条注释的标识,是默认设置。

# 要让服务器忽略这些文件可以用 "/dev/null" (for Unix)

# 或"nul" (for Win32) 作为参数。

#

#ResourceConfig conf/srm.conf

#AccessConfig conf/access.conf

#

# Timeout: 接受和发送timeout的时间

#

Timeout 300

#

# KeepAlive: 是否允许保持连接(每个连接有多个请求)

# "Off" -无效

#

KeepAlive On

#

# MaxKeepAliveRequests: 每个连接的最大请求数。

# 设置为0表示无限制

# 建议设置较高的值,以获得最好的性能。

#

MaxKeepAliveRequests 100

#

# KeepAliveTimeout: 同一连接同一客户端两个请求之间的等待时间。

#

KeepAliveTimeout 20

#

# 在Win32下,Apache每次产生一个子进程来处理请求。

# 如果这个进程死了,会自动产生另一个子进程。

# 所有的进入请求在子进程中多线程处理。

# 以下两个标识控制进程的运行

#

#

# MaxRequestsPerChild: 每个子进程死亡之前最大请求数

# 如果超过这个请求数,子程序会自动退出,避免延期使用导致内存溢出或其他问题#。

# 大部分系统,并不需要此设置,

# 但是部分,象Solaris,确实值得注意。

# 对Win32, 可设置为0 (无限制)

# 除非有另外的考虑。

#

# 注: 此值不包括在每个连接初始化请求后,"keptalive"请求

#       例如, 如果一个子进程处理一个初始化请求和10个后续"keptalive"请求,

#       在这个限制下,只会记为一个请求。

#

MaxRequestsPerChild 0

#

# ThreadsPerChild: 服务器所允许的并发线程数。

# 此值的设置取决于服务器的响应能力(约多的请求在同一时间激活,则每个请求的#处理时间越慢)

# 和服务器所允许消耗的系统资源。

#

ThreadsPerChild 50

#

# Listen: 允许将Apache绑顶到指定的IP地址和端口,作为默认值的辅助选项。

# 参见 <VirtualHost>

#

#Listen 3000

#Listen 12.34.56.78:80

#

# BindAddress: 通过此选项可支持虚拟主机。

# 此标识用于告诉服务器监听哪个IP地址。

# 包括:"*", IP地址, 或域名.

# 参见 <VirtualHost> 和 Listen directives.

#

#BindAddress *

#

# Dynamic Shared Object (DSO) Support

#

# To be able to use the functionality of a module which was built as a DSO you

# have to place corresponding `LoadModule' lines at this location so the

# directives contained in it are actually available _before_ they are used.

# Please read the file README.DSO in the Apache 1.3 distribution for more

# details about the DSO mechanism and run `apache -l' for the list of already

# built-in (statically linked and thus always available) modules in your Apache

# binary.

#

# Note: The order in which modules are loaded is important.  Don't change

# the order below without expert advice.

#

# Example:

# LoadModule foo_module modules/mod_foo.so

#

#LoadModule vhost_alias_module modules/mod_vhost_alias.so

#LoadModule mime_magic_module modules/mod_mime_magic.so

LoadModule status_module modules/mod_status.so

LoadModule info_module modules/mod_info.so

#LoadModule speling_module modules/mod_speling.so

LoadModule rewrite_module modules/mod_rewrite.so

#LoadModule anon_auth_module modules/mod_auth_anon.so

#LoadModule dbm_auth_module modules/mod_auth_dbm.so

#LoadModule digest_auth_module modules/mod_auth_digest.so

#LoadModule digest_module modules/mod_digest.so

#LoadModule proxy_module modules/mod_proxy.so

#LoadModule cern_meta_module modules/mod_cern_meta.so

#LoadModule expires_module modules/mod_expires.so

#LoadModule headers_module modules/mod_headers.so

#LoadModule usertrack_module modules/mod_usertrack.so

#LoadModule unique_id_module modules/mod_unique_id.so

LoadModule php4_module modules/php4apache.dll

LoadModule gzip_module modules/ApacheModuleGzip.dll

#

#  Reconstruction of the complete module list from all available modules

#  (static and shared ones) to achieve correct module execution order.

#

# The modules listed below, without a corresponding LoadModule directive,

# are static bound into the standard Apache binary distribution for Windows.

#

# Note: The order in which modules are loaded is important.  Don't change

# the order below without expert advice.

#

# [WHENEVER YOU CHANGE THE LOADMODULE SECTION ABOVE, UPDATE THIS TOO!]

ClearModuleList

#AddModule mod_vhost_alias.c

AddModule mod_env.c

AddModule mod_log_config.c

#AddModule mod_mime_magic.c

AddModule mod_mime.c

AddModule mod_negotiation.c

AddModule mod_status.c

AddModule mod_info.c

AddModule mod_include.c

AddModule mod_autoindex.c

AddModule mod_dir.c

AddModule mod_isapi.c

AddModule mod_cgi.c

AddModule mod_asis.c

AddModule mod_imap.c

AddModule mod_actions.c

#AddModule mod_speling.c

AddModule mod_userdir.c

AddModule mod_alias.c

AddModule mod_rewrite.c

AddModule mod_access.c

AddModule mod_auth.c

#AddModule mod_auth_anon.c

#AddModule mod_auth_dbm.c

#AddModule mod_auth_digest.c

#AddModule mod_digest.c

#AddModule mod_proxy.c

#AddModule mod_cern_meta.c

#AddModule mod_expires.c

#AddModule mod_headers.c

#AddModule mod_usertrack.c

#AddModule mod_unique_id.c

AddModule mod_php4.c

AddModule mod_so.c

AddModule mod_setenvif.c AddModule mod_gzip.c

<IfModule mod_gzip.c>

 mod_gzip_on                   Yes

 mod_gzip_update_static        No

 mod_gzip_temp_dir             /usr/local/apache/temp

 mod_gzip_keep_workfiles       No

 mod_gzip_minimum_file_size    100

 mod_gzip_maximum_file_size    0

 mod_gzip_maximum_inmem_size   1000000

 mod_gzip_min_http             1000

 mod_gzip_handle_methods       GET POST

 mod_gzip_item_exclude         reqheader  "User-agent: Mozilla/4.0[678]"

 mod_gzip_item_includefile.html$

 mod_gzip_item_include file.htm$

 mod_gzip_item_includefile.shtml$

 mod_gzip_item_includefile.shtm$

 mod_gzip_item_includefile.pl$

 mod_gzip_item_includefile.cgi$

 mod_gzip_item_includemime^text/.*

 mod_gzip_item_includehandler ^perl-script$

 mod_gzip_item_includemime^httpd/unix-directory$

 mod_gzip_item_includehandler^server-status$

 mod_gzip_item_includehandler^server-info$

 mod_gzip_item_includemime^application/x-httpd-php

 mod_gzip_item_includefile.php$

 mod_gzip_item_includefile.php3$

 mod_gzip_item_includefile.mht$

 mod_gzip_item_excludefile.ico$

 mod_gzip_item_excludefile.css$

 mod_gzip_item_excludefile.js$

 mod_gzip_item_excludemime^image/.*

 mod_gzip_item_excludereqheader Content-Type:multipart/form-data

 mod_gzip_item_excludereqheader Content-Type:application/x-www-form-urlencoded

 mod_gzip_item_excludefileattachment.php$

 mod_gzip_dechunk              Yes

 mod_gzip_add_header_countYes

</IfModule>

#

# ExtendedStatus 在服务器状态句柄被呼叫时控制是产生“完整”的状态信息#(ExtendedStatus On)

# 还是仅返回基本信息(ExtendedStatus Off)

# 默认是:Off

#

ExtendedStatus On

### 部分 2: 主服务器配置

#

# 此部分的标识用于主服务器所有的设置值,

# 响应任何<VirtualHost>定义不处理的请求

# 这些值同时给你稍后在此文件中定义的<VirtualHost>提供默认值。

#

# 所有的标识可能会在<VirtualHost>中出现。

# 对应的默认值会被虚拟主机重新定义覆盖。

#

#

# Port: Standalone服务器监听的端口。  

# 在Apache能够监听指定端口前,需要在防火墙中进行设置。

# 其它运行httpd的服务器也可能影响此端口。  Disable

# 如果遇到问题,请关闭所有的防火墙、安全保护和其他的服务。

# Windos NT的"NETSTAT -a"指令会有助于问题的分析。

#

Port 80

#

# ServerAdmin: 你的地址。如果服务器有任何问题将发信到这个地址。

# 这个地址会在服务器产生的某些页面中出现,例如,错误报告。

#

#

ServerAdmin [email protected]

#

# ServerName 允许设置主机名。如果与程序获得的不同,主机名将返回客户端。

# (例如,用"www"代替主机真实的名字)

#

# 注: 主机名不能随便指定。必须是你的机器有效的DNS名称。否则无法正常工作。

# 如果不能理解,倾向你的网络管理员询问。

# 如果你的主机没有注册DNS名,可在此输入IP地址。

# 此时必须用IP地址来访问。(如, http://123.45.67.89/)

# 这样扔可以完成重新定向的工作。

#

# 127.0.0.1 是TCP/IP的本地环路地址, 通常命名为localhost.

# 机器默认此地置为本身。 如果只是使用Apache来进行本地测试和开发,

# 可使用127.0.0.1 作为服务器名.

ServerName localhost

#

# DocumentRoot: 放置服务文档的目录。

# 默认状态下,所有的请求都以这个目录为基础。

# 但是直接符号连接和别名可用于指向其他位置。

#

DocumentRoot "/Inetpub/wwwroot" #

# Apache访问的每个目录可设置相关的服务和特性是允许或(和)不允许。

# (同样影响其子目录)

#

# 首先,设置"default"地址只有最基本的权限。

#

<Directory />

   Options FollowSymLinks

   AllowOverride None

</Directory>

#

# 注意从现在开始必须制定开启特殊的权限。

# 这样就不会产生意想不到的结果。

# 请仔细确认。

#

#

# 这个地址应与DocumentRoot保持一致

#

<Directory "/Inetpub/wwwroot">

#

#

# 此值可是: "None", "All", 或下列的组合: "Indexes",

# "Includes", "FollowSymLinks", "ExecCGI", 或 "MultiViews".

#

# 注意"MultiViews"必须明确指定--- "Options All"不包括此特性。

#

#

   Options Indexes FollowSymLinks MultiViews

#

# 允许值: "All"或者以下项的组合:"Options", "FileInfo",

# "AuthConfig", "Limit"

#

   AllowOverride All

#

# 控制哪些用户可从此服务器获得资料。

#

   Order allow,deny

   Allow from all

</Directory>

#

# UserDir: 当请求~user时,追加到用户主目录的路径地址。

#

# 在Win32下,并不要求指定为用户登陆的主目录。

# 因此可使用以下的格式。

# 详细参照文档UserDir

#

#<IfModule mod_userdir.c>

#    UserDir "/usr/www/users"

#</IfModule> #

# 控制访问UserDir目录.  The following is an example

# 以下是一个站点的例子,权限限制为只读。

#

#<Directory "E:/Program Files/Apache Group/Apache/users">

#    AllowOverride FileInfo AuthConfig Limit

#    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec

#    <Limit GET POST OPTIONS PROPFIND>

#        Order allow,deny

#        Allow from all

#    </Limit>

#    <LimitExcept GET POST OPTIONS PROPFIND>

#        Order deny,allow

#        Deny from all

#    </LimitExcept>

#</Directory>

#

# DirectoryIndex: 预设的HTML目录索引文件名。

# 用空格来分隔多个文件名。

#

<IfModule mod_dir.c>

   DirectoryIndex index.html index.php index.htm  index.php3 index.phtml

</IfModule>

#

# AccessFileName: 每个目录中用于控制访问信息的文件名。

#

AccessFileName .htaccess

#

# 以下行防止客户端可访问 .htaccess 文件。

# 因为 .htaccess文件通常包含授权信息,

# 处于安全的考虑不允许访问。

# 如果想让访客看到.htaccess文件的内容,

# 可将这些行注释。

# 如果修改了上面的AccessFileName,

# 请在此进行相应的修改。

#

# 同时,一般会用类似.htpasswd的文件保存密码。

# 这些文件同样可以得到保护。

#

<Files ~ "^.ht">

   Order allow,deny

   Deny from all

   Satisfy All

</Files>

#

# CacheNegotiatedDocs: 默认下,Apache对每个文档发送"Pragma: no-cache"

# 这将要求代理服务器不缓存此文档。

# 取消下列行的可取消这个属性,这样代理服务器将缓存这些文档。

#

#CacheNegotiatedDocs

#

# UseCanonicalName:  (1.3新增)  当此设置为on时,

# 无论何时Apache需要构建一个自引用的URL(指向响应来源服务器),

# 它将用ServerName和Port来构建一个规范的格式。

# 当此设置为off时,Apache将使用客户端提供的"主机名:端口"

# 这将同时影响CGI脚本中的SERVER_NAME和SERVER_PORT

UseCanonicalName On

#

# TypesConfig 记录媒体类型(mime.types)文件或类似的东东放置的位置

#

<IfModule mod_mime.c>

   TypesConfig conf/mime.types

</IfModule>

#

# DefaultType 是服务器处理未确认类型的文件,如为止的扩展名,的默认类型。

# 如果你的服务器上主要包含的是文本或HTML文档,"text/plain"是较好的设置

# 如果服务器上主要包含二进制文件,如应用程序或图片,

# 最好设置成"application/octet-stream"防止浏览器将二进制文件以文本的方式显示。

#

DefaultType text/plain

#

# mod_mime_magic模块允许服务器使用文件自身的不同标识来确定文件类型。

# MIMEMagicFile指示模块文件标识的定义所在的位置。

# mod_mime_magic不是默认服务器的一部分。

# (必须自行用LoadModule来追加 [见'全局环境'部分的 DSO 章节],

# 或者在编译服务器时包含mod_mime_magic部分)

# 包含在 <IfModule> 中.

# 就是说,如果该模块是服务器的一部分,MIMEMagicFile标识将执行。

#

<IfModule mod_mime_magic.c>

   MIMEMagicFile conf/magic

</IfModule>

#

# HostnameLookups: 注册客户端的机器名或IP地址。

# 例如: www.apache.org (on) 或 204.62.129.132 (off).

# 默认为off,因为对于网络来说,最好让人们有意识的设置为on,

# 因为开启此功能意味着每个客户请求将导致至少向name服务器发送一个lookup请求

#

HostnameLookups Off

#

# ErrorLog: 错误记录文件的地址

# 如果不在<VirtualHost>内指定ErrorLog

# 改虚拟主机的错误心细将记录到此处。

# 如果在<VirtualHost>中明确指定了错误记录文件,

# 则错误将记录在那儿而不是这儿。

#

ErrorLog nul

#

# LogLevel: 控制记录在error.log中信息的个数.

# 可能的值:debug, info, notice, warn, error, crit,

# alert, emerg.

#

LogLevel error

#

# 以下标识定义CustomLog标识使用的格式。(见下)

#

Logformat "%h %l %u %t "%V %r" %<s %b | mod_gzip: %{mod_gzip_result}n | IN:%{mod_gzip_input_size}n | OUT:%{mod_gzip_output_size}n | %{mod_gzip_compression_ratio}n Percent Compressed." gzip

Logformat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined

Logformat "%h %l %u %t "%r" %>s %b" common

Logformat "%{Referer}i -> %U" referer

Logformat "%{User-agent}i" agent

#

# The location and format of the access logfile (Common Logfile format).

# If you do not define any access logfiles within a <VirtualHost>

# container, they will be logged here.  Contrariwise, if you *do*

# define per-<VirtualHost> access logfiles, transactions will be

# logged therein and *not* in this file.