默认情况下,基本模块建议加载。

mod_actions

LoadModule actions_module modules/mod_actions.so

说明基于媒体类型或请求方法,为执行CGI脚本而提供
状态基本(B)
模块名actions_module


 

 

 

 

此模块有两个指令。
Action 指令让你可以在对特定MIME类型文件(p_w_picpath/gif )请求的时候运行CGI脚本。
Script  指令让你能够在使用特定请求方法(GET,POST,PUT等)的时候运行CGI脚本。

Action 指令例子

# 所有对MIME类型"p_w_picpath/gif"的请求都将被指定的CGI脚本/cgi-bin/p_w_picpaths.cgi进行处理

------------------------------------------
Action p_w_picpath/gif /cgi-bin/p_w_picpaths.cgi

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

# 与AddHandler 合用

#所有对具有扩展名".xyz"的文件的请求都将被指定的CGI脚本/cgi-bin/program.cgi进行处理。

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

AddHandler my-file-type .xyz
Action my-file-type /cgi-bin/program.cgi

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

语法 Action action-type cgi-script [virtual]

作用域: server config, virtual host, directory, .htaccess。

cgi-script是一个URL路径,指向一个已经被用ScriptAlias或AddHandler指令指定为CGI脚本的资源。

可选的virtual修饰词关闭了对所请求的文件是否真实存在的检查。用在希望将Action使用于虚拟位置的时候

Script  指令例子

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

# <ISINDEX>风格的搜索
Script GET /cgi-bin/search

# A CGI PUT 处理器
Script PUT /~bob/put.cgi

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

语法 Script method cgi-script
作用域 server config, virtual host, directory

method名大小写敏感,因此 Script PUT 和 Script put 具有完全不同的结果。

对应GET方法的脚本只有在提供了查询参数的时候才会被调用(例如:"foo.html?hi")。

将PHP以CGI方式安装到APACHE要用到此模块

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

ScriptAlias /php/ "/usr/local/php/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php/php-cgi.exe"

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

=================================================================

mod_alias

LoadModule alias_module modules/mod_alias.so

说明提供从文件系统的不同部分到文档树的映射和URL重定向
状态基本(B)
模块名alias_module

 

 

 

此模块提供以下指令:

Alias 指令
AliasMatch 指令
Redirect 指令
RedirectMatch 指令
RedirectPermanent 指令
RedirectTemp 指令
ScriptAlias 指令
ScriptAliasMatch 指令

Alias 指令例子:
 

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

<IfModule alias_module>
Alias /phpmyadmin/ "/ftp/phpMyAdmin/"
<Directory "/ftp/phpMyAdmin/">
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>
</IfModule>

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

对"http://myserver/phpmyadmin/index.php"的请求,将返回"/ftp/phpMyAdmin/index.php"文件。仅匹配完整路径。对于使用正则表达式的匹配,参见AliasMatch指令。

语法 Alias URL-path file-path|directory-path
作用域  server config, virtual host

ScriptAlias 指令例子:
---------------------------------------------------------

<VirtualHost *:80>
        DocumentRoot /var/www
        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>
    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>
    Alias /pics "/exports/flv12"
    <Directory "/exports/flv12">
        Options  Indexes
        AllowOverride AuthConfig FileInfo
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

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

语法 ScriptAlias URL-path file-path|directory-path
作用域 server config, virtual host

ScriptAlias指令的行为与Alias指令相同,但同时它又标明此目录中含有应该由cgi-script处理器处理的CGI脚本。

=========================================================

mod_asis

LoadModule asis_module modules/mod_asis.so

说明发送自己包含HTTP头内容的文件
状态基本(B)
模块名asis_module

 

 

 

send-as-is: 直接发送,不增加 HTTP 头。任何带有".asis"扩展名的文件的内容会被Apache原样发往客户端。

用法:

在httpd.conf里启用

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

AddHandler send-as-is asis

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

此语句将MIME-type httpd/send-as-is指定给文件扩展名.asis.

用ASIS文件来重定向到另一个页面。

在主机的目录中添加index.asis

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

 DirectoryIndex index.asis index.html index.htm

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

index.asis 的内容:

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

Status: 301 Now where did I leave that URL

Location: http://www.lowlife.org
Content-type: text/html

<HTML>
<HEAD>
<TITLE>Moved to http://www.lowlife.org</TITLE>
</HEAD>
<BODY>
This site has moved to http://www.lowlife.org
</BODY>
</HTML>

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

注意:

1 "Status:"是必须的头;此数据应该是3位数字的HTTP应答码,跟随一段文字信息。

2 服务器总会在送给客户端的资料里加上"Date:"和"Server:"头,所以这两个头不应该包含在这个文件里。

3 服务器不会加上通常都会加上的"Last-Modified:"头。

===============================================================

mod_auth_basic

LoadModule auth_basic_module modules/mod_auth_basic.so

说明使用基本认证
状态基本(B)
模块名auth_basic_module

 

 

 

 mod_auth_basic 提供以下指令:

1 AuthBasicAuthoritative 指令  仅仅在将mod_auth_basic和未使用AuthBasicProvider进行配置的第三方模块联合使用的时候才需设置为off
 

2 AuthBasicProvider 指令       设置了该区域的(基本)认证支持者(Provider)。默认的file支持者由mod_authn_file模块实现。

此模块使用HTTP基本认证,在认证支持模块的帮助下查找用户名和密码,从而进行访问控制。通常至少需要和一个认证支持模块(如mod_authn_file)和一个授权支持模块(如mod_authz_user)一起使用。

能够提供认证支持者(Provider)的模块如下:

mod_authn_dbm,

mod_authn_file,

mod_authn_dbd,

mod_authnz_ldap 。

用户认证技术:

当访问一些网站的某些资源时,浏览器弹出一个对话框,要求输入用户名和密码来获取对资源的访问权。

mod_auth模块用存储在文本文件中的用户名、组名和密码来实现认证。

例子:

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

1 对/usr/local/apache/htdocs/members目录启用用户认证
<Directory /usr/local/apache/htdocs/members>
Options Indexes FollowSymLinks
allowoverride authconfig
order allow,deny
allow from all
</Directory>

其中,allowoverride authconfig一行表示允许对/usr/local/apache/htdocs/members目录下的文件进行用户认证。

2.在限制访问的目录/usr/local/apache/htdocs/members下建立一个文件.htaccess,其内容如下:

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

AuthName \"会员区\"
AuthType basic

AuthBasicProvider file
AuthUserFile/usr/local/apache/members.txt
require valid-user

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

文件.htaccess中常用的配置命令有以下几个:
1)AuthName命令:指定认证区域名称。区域名称是在提示要求认证的对话框中显示给用户的。
2)AuthType命令:指定认证类型。在HTTP1.0中,只有一种认证类型:basic。在HTTP1.1中有几种认证类型,如MD5。

3)AuthUserFile命令:指定一个包含用户名和密码的文本文件,每行一对。

4)AuthGroupFile命令:指定包含用户组清单和这些组的成员清单的文本文件。

5)require命令:指定哪些用户或组才能被授权访问。如:
require user user1 user2 (只有用户user1和user2可以访问)
require group managers (只有组managers中成员可以访问)
require valid-user (在AuthUserFile指定的文件中任何用户都可以访问)


3.利用Apache附带的程序htpasswd,生成包含用户名和密码的文本文件:/usr/local/apache/members.txt,每行内容格式为“用户名:密码”。
#cd /usr/local/apache/bin
#htpasswd -bc ../members.txt user1 1234
#htpasswd -b ../members.txt user2 5678

4. 允许组用户。需用3步骤添加单个用户

#vi /usr/local/apache/.htgroup

---------------------------
asb_readers:user1 user2
-----------------------------

修改.htaccess文件

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

AuthName \"会员区\"
AuthType basic

AuthBasicProvider file
AuthUserFile  /usr/local/apache/members.txt
AuthGroupFile  /usr/local/apache/.htgroup
require group asb_reader

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

文本文件members.txt含有两个用户:user1,口令为1234;user2,口令为5678。注意,不要将此文本文件存放在Web文档的目录树中,以免被用户下载。

将用户密码保存在数据库中参照http://www.jb51.net/article/18319.htm

================================================================

mod_authn_alias

mod_authn_anon

mod_authn_dbd

mod_authn_dbm

mod_authn_default

mod_authn_file

mod_authnz_ldap

LoadModule authn_alias_module modules/mod_authn_alias.so
LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_dbd_module modules/mod_authn_dbd.so
LoadModule authn_dbm_module modules/mod_authn_dbm.so

LoadModule authn_default_module modules/mod_authn_default.so

LoadModule authn_file_module modules/mod_authn_file.so

LoadModule authnz_ldap_module modules/mod_authnz_ldap.so

以上七个都是扩展模块,为mod_auth提供认证支持。

mod_authn_alias   基于实际认证支持者创建扩展的认证支持者,并为它起一个别名以便于引用

mod_authn_anon     提供匿名用户认证支持

mod_authn_dbd     使用SQL数据库为认证提供支持

mod_authn_dbm     使用DBM数据库为认证提供支持

mod_authn_default

LoadModule authn_default_module modules/mod_authn_default.so

说明在未正确配置认证模块的情况下简单拒绝一切认证信息
状态基本(B)
模块名authn_default_module

 

 

 

该模块是一个失败补救(fallback)模块,它在未正确配置认证模块(比如mod_auth_basic)的情况下默认不使用用户认证。

mod_authn_default 提供以下指令:

AuthDefaultAuthoritative 指令 

将AuthDefaultAuthoritative明确设置为 Off 将允许将认证操作交由更底层的(在modules.c文件中定义的)模块来处理。通常并不存在更底层的模块,因为mod_authn_default已经被定义为非常底层的模块了。因此最好将AuthDefaultAuthoritative保持其默认值(On)。

mod_authn_file

LoadModule authn_file_module modules/mod_authn_file.so

说明使用纯文本文件为认证提供支持
状态基本(B)
模块名authn_file_module

 

 

 

该模块为认证前端mod_auth_basic)使用纯文本文件进行用户认证提供支持。使用mod_auth_basic的时候,可以通过在AuthBasicProvider指令中使用file值调用该模块。

mod_uathn_file 提供以下指令:

AuthUserFile 指令    设定一个纯文本文件的名称,其中包含用于认证的用户名/密码的列表,文件的路径如果不是绝对路径(也就是说,如果不是以斜杠开始的),则是相对于ServerRoot的相对路径。

==================================================================

mod_authz_dbm

mod_authz_default

mod_authz_groupfile

mod_authz_host

mod_authz_owner

mod_authz_user

LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_user_module modules/mod_authz_user.so

以上6个模块为mod_auth提供授权支持。

mod_authz_default

说明在未正确配置授权支持模块的情况下简单拒绝一切授权请求
状态基本(B)
模块名authz_default_module

 

 

 

 

 该模块是失败补救(fallback)模块,它在未正确配置授权支持模块(比如mod_authz_user或mod_authz_groupfile)的情况下简单拒绝一切授权请求。

mod_authz_default 提供以下指令:

AuthzDefaultAuthoritative 指令

mod_authz_user

说明基于每个用户提供授权支持
状态基本(B)
模块名authz_user_module

 

 

 

该模块可以允许或拒绝经过认证的用户访问受保护的区域。

mod_authz_user提供以下指令:

AuthzUserAuthoritative 指令

 

mod_authz_user有两种授权方式(二选一):

1 根据在Require user中列出的用户对访问进行控制,

2 根据require valid-user指令简单允许所有成功通过认证的用户进行访问。

mod_authz_groupfile

说明使用纯文本文件为组提供授权支持
状态基本(B)
模块名authz_groupfile_module

 

 

 

该模块可以根据经过认证的用户是否属于特定组来允许或拒绝访问受保护的区域。

为mod_auth提供:AuthGroupFile 指令。

AuthGroupFile 指令    指令设定一个文本文件的名称,这个纯文本文件包含用于执行用户认证的用户组列表。存放用户组列表文件的路径如果不是绝对路径,则是相对于ServerRoot的相对路径。

AuthzGroupFileAuthoritative 指令

mod_authz_host

说明提供基于主机名、IP地址、请求特征的访问控制
状态基本(B)
模块名authz_host_module

 

 

 

mod_authz_host提供的指令用在<Directory>, <Files>, <Location>段中,也用于.htaccess文件中控制对服务器特定部分的访问。

提供:Allow 指令,Deny 指令 ,Order 指令。

Order指令控制默认的访问状态与Allow和Deny指令生效的顺序。

Deny,Allow
    Deny指令在Allow指令之前被评估。默认允许所有访问。任何不匹配Deny指令或者匹配Allow指令的客户都被允许访问。
Allow,Deny
    Allow指令在Deny指令之前被评估。默认拒绝所有访问。任何不匹配Allow指令或者匹配Deny指令的客户都将被禁止访问。

===============================================================

mod_autoindex

LoadModule autoindex_module modules/mod_autoindex.so

说明自动对目录中的内容生成列表,类似于"ls"或"dir"命令
状态基本(B)
模块名autoindex_module

 

 

 

如果没有指定目录索引页(index.html,index,php等),自动生成目录列表。

mod_autoindex提供以下指令:

AddAlt               将指定文件名的图标替换为文本
AddAltByEncoding     和AddAlt一样,只是方法是通过指定MIME编码(MIME-encoding)
AddAltByType         和AddAlt一样,只是方法是通过指定MIME内容类型(MIME content-type)
AddDescription       给文件(夹)添加描述,如果描述有空格,使用双引号包裹起来
AddIcon              指定文件名添加图标
AddIconByEncoding    和AddIcon一样,只是通过MIME编码来区分文件
AddIconByType        和AddIcon一样,只是通过MIME内容类型来区分文件
DefaultIcon          没有通过AddIcon*指定的文件则使用此默认图标
HeaderName           可以在索引列表的前面插入一个文件的内容。如果以“/”开头,则是相对于DocumentRoot目录。
IndexHeadInsert      在列表页面的<head>标签内插入html代码
IndexIgnore          使一些文件或文件扩展名不出现在目录列表中。
IndexOptions         开启高级索引
IndexOrderDefault    用于设定目录排序
IndexStyleSheet      输出页面的样式表
ReadmeName      在高级索引列表的最后插入一个文件

具体例子参考:

Apache定制mod_autoindex的心得

apache mod_autoindex 详解
============================================================= 

mod_cgi

LoadModule cgi_module modules/mod_cgi.so

说明在非线程型MPM(prefork)上提供对CGI脚本执行的支持
状态基本(B)
模块名cgi_module

 

 

 

任何具有MIME类型application/x-httpd-cgi或者被cgi-script处理器处理的文件都将被作为CGI脚本对待并由服务器运行,它的输出将被返回给客户端。可以通过两种途径使文件成为CGI脚本,一种是文件具有已由AddType指令定义的扩展名,另一种是文件位于ScriptAlias目录中。

在UNIX下使用多线程型的MPM时,应该使用模块mod_cgid代替本模块。在用户层面,这两个模块本质上是相同的。

mod_cgi提供以下指令:

ScriptLog 指令        CGI脚本错误日志文件的位置
ScriptLogBuffer 指令  限制记入日志文件的PUT或者POST内容的大小,防止如果接收到很大内容时日志文件的尺寸增加得太快太大。默认地,最多纪录1024字节
ScriptLogLength 指令  可以用来给CGI日志文件的大小设置一个上限。默认10385760bytes

================================================================

mod_cgid

说明在线程型MPM(worker)上用一个外部CGI守护进程执行CGI脚本
状态基本(B)
模块名cgid_module

 

 

 

 

只要编译时选择了多线程型的MPM支持,这个模块就会默认代替mod_cgi 。

==============================================================

mod_dir

LoadModule dir_module modules/mod_dir.so

说明指定目录索引文件以及为目录提供"尾斜杠"重定向
状态基本(B)
模块名mod_dir.c

 

 

 

 

因为对目录的请求需要以一个"/"结尾,所以当服务器接收到对 http://servername/foo/dirname 的请求时,若dirname是一个目录,则mod_dir将会将其重定向到 http://servername/foo/dirname/

mod_dir 提供以下指令:

DirectoryIndex 指令 定义 目录索引页(index.php,index.html)

DirectorySlash 指令    决定mod_dir是否通过在请求的URL结尾补上"/"使其重定向到其所指向的目录。

 

===============================================================

mod_env

LoadModule env_module modules/mod_env.so

说明允许Apache修改或清除传送到CGI脚本和SSI页面的环境变量
状态基本(B)
模块名env_module

 

 

 

本模块用于控制传送给CGI脚本和SSI页面的环境变量。所传送的环境变量可以来自调用httpd进程的shell ,或者来自在配置过程中所设定(set)或撤销(unset)的变量。

mod_env提供以下指令:

 PassEnv 指令    从调用httpd进程所在的shell中,指定一个或者更多个环境变量,传送到CGI脚本和SSI页面。
SetEnv 指令     设置一个环境变量,该变量将会传送到CGI脚本和SSI页面。
UnsetEnv 指令   在传送到CGI脚本和SSI页面的环境中,删除一个或者多个环境变量。

===============================================================

mod_filter

说明   
状态基本(B)
模块名filter_module

 

 

 

提供以下指令:

FilterChain 指令 设置过滤链
FilterDeclare 指令 声明一个智能过滤器
FilterProtocol 指令 正确处理HTTP协议的处理规则
FilterProvider 指令 注册一个内容过滤器
FilterTrace 指令 从mod_filter获得debug信息

 

================================================================

mod_include

LoadModule include_module modules/mod_include.so

说明实现服务端包含文档(SSI)处理
状态基本(B)
模块名include_module

 

 

 

 mod_include提供以下指令:

SSIEndTag 指令         SSI语句的结束符,默认为 "-->"
SSIStartTag 指令       SSI语句的开始符,默认为 "<!--#"
SSIErrorMsg 指令       自定义SSI错误
SSITimeFormat 指令     设置时间显示的格式
SSIUndefinedEcho 指令  未定义的变量显示时会被替换为此字符串
XBitHack 指令          控制服务器分析与MIME类型text/html有关的文件。设置为on,具有可执行权限的HTML文件被认为是SSI文件。

SSI的配置

---------------------------------------------------
<VirtualHost 206.171.50.50>
    ServerName test.com
    DocumentRoot /data/web/htdocs
    ScriptAlias /data/web/cig-bin
    <Directory /dat/web/htdocs/chapter07>
        AddHandler server-parsed .shtml
 AddType text/html .shtml
 Options +Include
    </Directory>
</VirtualHost>

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

AddHandler server-parsed .shtml
此命令通知apache,用server-parsed程序处理shtml. server-parsed在mod_include模块中。

AddType text/html .shtml
apache将产生text/html内容类型的头标,告诉浏览器以HTML文档显示出来。

Options +Include
告诉apache使用Include支持

===============================================================

mod_isapi

LoadModule isapi_module modules/mod_isapi.so

说明仅限于在Windows平台上实现ISAPI扩展
状态基本(B)
模块名isapi_module

 

 

 

本模块使得Windows上的Apache能有限地实现互联网服务扩展(比如调用ISAPI的动态连接库)。

==============================================================

mod_log_config

LoadModule log_config_module modules/mod_log_config.so

说明允许记录日志和定制日志文件格式
状态基本(B)
模块名log_config_module

 

 

 

本模块提供了三个指令:

TransferLog指令用来指定日志文件,

LogFormat指令用来定义日志格式,

CustomLog指令可以同时完成指定日志文件和定义日志格式。

TransferLog和CustomLog指令在每个服务器上都可以被多次使用,以便将同一个请求记录到多个文件中。

=================================================================

mod_mime

LoadModule mime_module modules/mod_mime.so

说明根据文件扩展名决定应答的行为(处理器/过滤器)和内容(MIME类型/语言/字符集/编码)
状态基本(B)
模块名mime_module

 

 

 

AddCharset, AddEncoding, AddLanguage, AddType指令都可以用于在文件的扩展名与文件的元信息之间建立映射关系。它们分别指明了文档的字符集、编码方式、语言、MIME类型(内容类型)。指令TypesConfig用来指定一个文件,它也包含了扩展名到MIME类型的映射关系。

指令AddHandler, AddOutputFilter, AddInputFilter控制了提供文档的模块或脚本的运作方式。MultiviewsMatch指令设定mod_negotiation模块在尝试Multiview匹配时,如何处理文件扩展名。

当mod_mime模块在元信息与文件的扩展名之间建立映射以后,core提供了一组指令用来建立某个给定范围内(也就是<Location>, <Directory>, <Files>)所有相关文件与特定的元信息之间的关联。这些指令包括ForceType, SetHandler, SetInputFilter, SetOutputFilter 。core的指令会覆盖任何在mod_mime模块中定义的文件扩展名映射。

mod_mime 提供以下指令:

AddCharset 指令  在给定的文件扩展名与特定的字符集之间建立映射
AddEncoding 指令 将一个或多个文件扩展名映射到一个MIME-encoding(编码方式)
AddHandler 指令  将一个或多个文件扩展名指定一个处理程序
AddInputFilter 指令 在文件扩展名与特定的输入过滤器之间建立映射
AddLanguage 指令 在文件扩展名与特定的语言之间建立映射。在内容协商中很有用。
AddOutputFilter 指令 在文件扩展名与特定的输出过滤器之间建立映射关系
AddType 指令  将文件扩展名列表映射到一个MIME-type(内容类型)
DefaultLanguage 指令 为所有文件设定特定的默认语言
ModMimeUsePathInfo 指令 将path_info当成是文件名的一个组成部分
MultiviewsMatch 指令 在使用MultiViews查询所匹配的文件时要包含的文件类型
RemoveCharset 指令 删除任何给定的扩展名与内容字符集之间的关联
RemoveEncoding 指令 删除任何给定的扩展名与内容编码方式之间的关联
RemoveHandler 指令 删除任何指定扩展名与处理器之间的关联
RemoveInputFilter 指令 删除指定扩展名与输入过滤器之间的关联
RemoveLanguage 指令 删除指定的扩展名与内容语言之间的关联
RemoveOutputFilter 指令 删除指定扩展名与输出过滤器之间的关联
RemoveType 指令  删除指定扩展名与内容类型之间的关联
TypesConfig 指令 指定mime.types文件的位置

=================================================================

mod_negotiation

LoadModule negotiation_module modules/mod_negotiation.so

说明提供内容协商支持
状态基本(B)
模块名negotiation_module

 

 

 

内容协商,更准确的说应该是"内容选择",是从几个有效文档中选择一个最匹配客户端要求的文档的过程(如存在index.cn.html和index.en.html)。内容协商有两种实现方法。

    使用类型表(一个包含type-map处理器信息的文件)明确地列出各变种的文件名。
    使用"MultiViews"搜索(由Options指令中的MultiViews选项激活),即服务器执行一个隐含的文件名模式匹配,并在结果中选择。

提供以下命令:

 CacheNegotiatedDocs 指令 允许经过内容协商的文档被代理服务器缓存。HTTP/1.1不建议使用。
ForceLanguagePriority 指令 指定无法匹配单个文档的情况下所采取的动作
LanguagePriority 指令  在客户端没有指示语言偏好的情况下,语言的优先级列表

==============================================================

mod_setenvif

LoadModule setenvif_module modules/mod_setenvif.so

说明根据客户端请求头字段设置环境变量
状态基本(B)
模块名setenvif_module

 

 

 

mod_setenvif模块允许根据请求的不同方面匹配指定的正则表达式来设置环境变量。这些环境变量可由服务器的其他部分使用。

提供以下指令:

BrowserMatch 指令 基于客户端的User-Agent头有条件地设置环境变量
BrowserMatchNoCase 指令 基于不区分大小写的User-Agent头有条件地设置环境变量
SetEnvIf 指令  基于客户端的所有请求头标设置环境变量
SetEnvIfNoCase 指令 不区分大小写


指令按照他们在配置文件中出现的顺序生效。所以可以使用更多的复合序列,正如下例所示,如果浏览器是mozilla而非MSIE则会设置netscape 。
----------------------------------
BrowserMatch ^Mozilla netscape
BrowserMatch MSIE !netscape
--------------------------------------


================================================================

 

mod_status

说明生成描述服务器状态的Web页面
状态基本(B)
模块名status_module

 

 

 

 本模块允许服务器管理员方便的检查服务器当前的运行状况。

提供以下指令:

ExtendedStatus 指令 为每个请求记录扩展的状态信息

使用<Location ..>容器定义apache状态显示的页面
<Location /apache-status>
SetHandler server-status
</Location>

然后使用www.mydomain.com/apache-status访问

www.mydomain.com/apache-status?refresh=N访问状态页面可以每N秒自动刷新一次。

www.mydomain.com/apache-status?auto 显示简化的信息

输出的详细信息如下:
    正在伺服请求的子进程(线程或进程)数量
    空闲的子进程数量
    每个子进程的状态:已完成的请求数、已发送的字节数。(*)
    总访问数和已发送的字节总数(*)
    服务器自启动/重启以来经过的时间,服务器已经运行的时间。
    平均每秒请求数,平均每秒发送的字节数,平均每个请求发送的字节数。(*)
    每个子进程的当前CPU使用百分率,以及Apache的当前总计CPU使用百分率。(*)
    当前正在被处理的主机和请求(*)

在apache的support目录下的log_server_status的Perl脚本将状态信息保存在文本文件中

======================================================

mod_userdir

说明允许用户从自己的主目录中提供页面(使用"/~username")
状态基本(B)
模块名userdir_module

 

 

 

此模块允许使用类似http://example.com/~user/的语法来访问用户网站目录。

UserDir 指令 用户网站目录的位置

2.1.4及以后的版本中,默认不开启用户网站目录。在未设置UserDir指令的情况下将使用"UserDir public_html"默认值。