Apache配置文件<httpd.conf>------解读
鬼才小科
|
1#
鬼才小科 发表于 2008-03-04 21:17
Apache配置文件<httpd.conf>------解读
整理了一个APACHE的配置文件的中文说明---希望对小菜们有帮助---高手就算了.呵呵
对于RedHat Linux系统,Apache的配置文件放在/etc/httpd/conf/目录下。如果是自行编译安装的Apache,则视编译时指定的目录路径而定,默认是/usr/local/apache/conf。 在conf目录下有3个Apache的配置文件: httpd.conf access.conf srm.conf Apache启动时先调用httpd.conf,然后调用srm.conf,最后调用access.conf。但现代版本的Apache为避免管理和维护的混乱,已经改为将所有Apache的相关配置命令放在httpd.conf文件中,不再使用srm.conf和access.conf文件。虽然这两个文件仍然存在,但内容中没有任何配置命令,形同虚设。 四、httpd.conf文件分为以下3部分: 1 Global Environment 2 'Main' server configuration 3 Virtual Hosts ### Section 1: Global Environment //当服务器响应主机头(header)信息时显示Apache的版本和操作系统名称 ServerTokens OS //设置服务器的根目录 ServerRoot "/etc/httpd" #ScoreBoardFile run/httpd.scoreboard //设置运行Apache时使用的PidFile的路径 PidFile run/httpd.pid //若300秒后没有收到或送出任何数据就切断该连接 Timeout 300 //不使用保持连接的功能,即客户一次请求连接只能响应一个文件 /建议用户将此参数的值设置为On,即允许使用保持连接的功能 KeepAlive Off //在使用保持连接功能时,设置客户一次请求连接能响应文件的最大上限 MaxKeepAliveRequests 100 //在使用保持连接功能时,两个相邻的连接的时间间隔超过15秒,就切断连接 KeepAliveTimeout 15 ## ## Server-Pool Size Regulation (MPM specific) ## # prefork MPM # StartServers: number of server processes to start # MinSpareServers: minimum number of server processes which are kept spare # MaxSpareServers: maximum number of server processes which are kept spare # MaxClients: maximum number of server processes allowed to start # MaxRequestsPerChild: maximum number of requests a server process serves //设置使用Prefork MPM运行方式的参数,此运行方式是Red hat默认的方式 //设置服务器启动时运行的进程数 StartServers 8 //Apache在运行时会根据负载的轻重自动调整空闲子进程的数目 //若存在低于5个空闲子进程,就创建一个新的子进程准备为客户提供服务 MinSpareServers 5 //若存在高于20个空闲子进程,就创建逐一删除子进程来提高系统性能 MaxSpareServers 20 //限制同一时间的连接数不能超过150 MaxClients 150 //限制每个子进程在结束处理请求之前能处理的连接请求为1000 MaxRequestsPerChild 1000 # worker MPM # StartServers: initial number of server processes to start //设置使用Worker MPM运行方式的参数 StartServers 2 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0 # perchild MPM # NumServers: constant number of server processes //设置使用perchild MPM运行方式的参数 NumServers 5 StartThreads 5 MinSpareThreads 5 MaxSpareThreads 10 MaxThreadsPerChild 20 MaxRequestsPerChild 0 //设置服务器的监听端口 #Listen 12.34.56.78:80 Listen 202.112.85.101:80 # # Load config files from the config directory "/etc/httpd/conf.d". //将/etc/httpd/conf.d目录下所有以conf结尾的配置文件包含进来 Include conf.d/*.conf # # Dynamic Shared Object (DSO) Support //动态加载模块(DSO) # Example: # LoadModule foo_module modules/mod_foo.so # LoadModule access_module modules/mod_access.so LoadModule auth_module modules/mod_auth.so LoadModule auth_anon_module modules/mod_auth_anon.so LoadModule auth_dbm_module modules/mod_auth_dbm.so LoadModule auth_digest_module modules/mod_auth_digest.so LoadModule include_module modules/mod_include.so LoadModule log_config_module modules/mod_log_config.so LoadModule env_module modules/mod_env.so LoadModule mime_magic_module modules/mod_mime_magic.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 setenvif_module modules/mod_setenvif.so LoadModule mime_module modules/mod_mime.so LoadModule dav_module modules/mod_dav.so LoadModule status_module modules/mod_status.so LoadModule autoindex_module modules/mod_autoindex.so LoadModule asis_module modules/mod_asis.so LoadModule info_module modules/mod_info.so LoadModule cgi_module modules/mod_cgi.so LoadModule dav_fs_module modules/mod_dav_fs.so LoadModule vhost_alias_module modules/mod_vhost_alias.so LoadModule negotiation_module modules/mod_negotiation.so LoadModule dir_module modules/mod_dir.so LoadModule imap_module modules/mod_imap.so LoadModule actions_module modules/mod_actions.so LoadModule speling_module modules/mod_speling.so LoadModule userdir_module modules/mod_userdir.so LoadModule alias_module modules/mod_alias.so LoadModule rewrite_module modules/mod_rewrite.so LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_ftp_module modules/mod_proxy_ftp.so LoadModule proxy_http_module modules/mod_proxy_http.so LoadModule proxy_connect_module modules/mod_proxy_connect.so //当使用内置模块perfork.c时动态加载cgi_module LoadModule cgi_module modules/mod_cgi.so #ExtendedStatus On ### Section 2: 'Main' server configuration //设置运行Apache服务器的用户和组 User apache Group apache //设置Apache服务器管理员的E_mail地址 ServerAdmin admin at astro dot bnu.edu.cn ServerName mail.astro.bnu.edu.cn //关闭此选项,当Apache服务器需要指向本身的连接时使用 //serverName:port作为主机名,例如www.jamond.net:80 //若打开此选项将使用www.jamond.net port 80作为主机名 UseCanonicalName Off //设置根文档路径 #DocumentRoot "/var/www/html" DocumentRoot "/home/httpd" //设置apache服务器根的访问权限 //允许符号链接跟随,访问不在本目录下的文件 Options FollowSymLinks //禁止读取.htaccess配置文件的内容 AllowOverride None //设置根文档目录的访问权限 //Indexes:当在目录中找不到DirectoryIndex列表中指定的文件 //就生成当前目录的文件列表 //FollowSymLinks允许符号链接跟随,访问不在本目录下的文件 Options Indexes FollowSymLinks //禁止读取.htaccess配置文件的内容 AllowOverride None //指定先执行Allow(允许)访问规则,在执行Deny访问规则 Order allow,deny # Allow from 202.112.85.0/16 //设置Allow(允许)访问规则,允许所有连接 Allow from all # Deny from all //对Apache服务器的根的访问不生成目录列表,同时指定错误输出页面 Order allow,deny Deny from all //指定负责处理MIME对应格式的配置文件的存放位置 TypesConfig /etc/mime.types //指定默认的MIME文件类型为纯文本或HTML文件 DefaultType text/plain //当mod_mime_magic.c模块被加载时,指定magic信息码配置文件的存放位置 # MIMEMagicFile /usr/share/magic.mime MIMEMagicFile conf/magic //只记录连接Apache服务器的Ip地址,而不纪录主机名 HostnameLookups Off //指定错误日志存放位置 ErrorLog logs/error_log //指定记录的错误信息的详细等级为warn等级 LogLevel warn //定义四中记录日志的格式 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 //指定访问日志的纪录格式为combined(混合型),并指定访问日志存放位置 # CustomLog logs/access_log common CustomLog logs/access_log combined #CustomLog logs/referer_log referer #CustomLog logs/agent_log agent #CustomLog logs/access_log combined //设置apache自己产生的页面中使用apache服务器版本的签名 ServerSignature On //设置内容协商目录的访问别名 Alias /icons/ "/var/www/icons/" //设置/var/www/icons/的访问权限 //MultiViews 使用内容协商功决定被发送的网页的性质 Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all //设置网页邮件服务 Alias /webmail "/usr/share/squirrelmail" Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all //设置apache手册的访问别名 Alias /manual "/var/www/manual" Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all //指定DAV加锁数据库文件的存放位置 # Location of the WebDAV lock database. DAVLockDB /var/lib/dav/lockdb Alias /docs "/home/EMU/webmail/docs/" Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all # Location of the WebDAV lock database. DAVLockDB /var/lib/dav/lockdb //设置CGI目录的访问别名 ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" //由于red hat中不使用worker MPM运行方式,所以不加载mod_cgid.c模块 # # Additional to mod_cgid.c settings, mod_cgid has Scriptsock # for setting UNIX socket for communicating with cgid. # #Scriptsock logs/cgisock //设置CGI目录的访问权限 AllowOverride None Options None Order allow,deny Allow from all //重定向连接 # Redirect permanent /foo http://www.example.com/bar //设置自动生成目录列表的显示方式 //FancyIndexing 对每种类型的文件前加上一个小图标以示区别 //VersionSort 对同一个软件的多个版本进行排序 //NameWidth=* 文件名字段自动适应当前目录下的最长文件名 IndexOptions FancyIndexing VersionSort NameWidth=* //当使用IndexOptions FancyIndexing之后,配置下面的参数 //用于告知服务器在遇到不同的文件类型或扩展名时采用MIME编码格式 //辨别文件类型并显示相应的图标 AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip AddIconByType (TXT,/icons/text.gif) text/* AddIconByType (IMG,/icons/image2.gif) image/* AddIconByType (SND,/icons/sound2.gif) audio/* AddIconByType (VID,/icons/movie.gif) video/* //当使用IndexOptions FancyIndexing之后,配置下面的参数 //用于告知服务器在遇到不同的文件类型或扩展名时采用所指定的格式 //并显示相应的图标 AddIcon /icons/binary.gif .bin .exe AddIcon /icons/binhex.gif .hqx AddIcon /icons/tar.gif .tar AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip AddIcon /icons/a.gif .ps .ai .eps AddIcon /icons/layout.gif .html .shtml .htm .pdf AddIcon /icons/text.gif .txt AddIcon /icons/c.gif .c AddIcon /icons/p.gif .pl .py AddIcon /icons/f.gif .for AddIcon /icons/dvi.gif .dvi AddIcon /icons/uuencoded.gif .uu AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl AddIcon /icons/tex.gif .tex AddIcon /icons/bomb.gif core AddIcon /icons/back.gif .. AddIcon /icons/hand.right.gif README AddIcon /icons/folder.gif ^^DIRECTORY^^ AddIcon /icons/blank.gif ^^BLANKICON^^ //当使用IndexOptions FancyIndexing之后,且无法识别文件类型时 //显示此处定义的图标 DefaultIcon /icons/unknown.gif # # AddDescription allows you to place a short description after a file in # server-generated indexes. These areonly displayed for FancyIndexed # directories. # Format: AddDescription "description" filename # #AddDescription "GZIP compressed document" .gz #AddDescription "tar archive" .tar #AddDescription "GZIP compressed tar archive" .tgz //当服务器自动列出目录列表时,在所生成的页面之后显示readme.html的内容 ReadmeName README.html //当服务器自动列出目录列表时,在所生成的页面之前显示header.html的内容 HeaderName HEADER.html # # IndexIgnore is a set of filenames which directory indexing should ignore # and not include in the listing. Shell-style wildcarding is permitted. # IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t //设置在线浏览用户可以实时解压缩.z .gz .tgz类型的文件 //并非所有浏览器都支持 AddEncoding x-compress Z AddEncoding x-gzip gz tgz # # DefaultLanguage nl # Danish (da) - Dutch (nl) - English (en) - Estonian (et) # French (fr) - German (de) - Greek-Modern (el) # Italian (it) - Norwegian (no) - Norwegian Nynorsk (nn) - Korean (kr) # Portugese (pt) - Luxembourgeois* (ltz) # Spanish (es) - Swedish (sv) - Catalan (ca) - Czech(cz) # Polish (pl) - Brazilian Portuguese (pt-br) - Japanese (ja) # Russian (ru) - Croatian (hr) # |