服务器 频道

Apache服务器指令大全

  【IT168 服务器学院】一、一般的配置命令
  

  1、AccessFileName

  默认值:AccessFileName .htaccess

  此命令是针对目录的访问控制文件的名称;

  2、BindAddress

  默认值:BindAddress *

  设置服务器监听的IP地址;

  3、DefaultType

  默认值:DefaultType text/html

  服务器不知道文件类型时,用缺省值通知客户端;

  4、DocumentRoot

  默认值:DocumentRoot “/var/www/html/”

  设置Apache提供文件服务的目录;

  5、ErrorDocument

  设置当有问题发生时,Apache所做的反应;

  6、<IfModule>

  使用不包含在Apache安装中的模块的命令

  7、Include

  包含其它的配置文件

  8、Listen

  默认值:所有能够连接到服务器的IP地址

  指定如何响应除去Port指定的端口地址外的地址请求;

  9、Options

  控制某个特定目录所能使用的服务器功能;

  其值有:

  None:表示只能浏览,

    FollowSymLinks:允许页面连接到别处,

    ExecCGI:允许执行CGI,
     MultiViews:允许看动画或是听音乐之类的操作,

    Indexes:允许服务器返回目录的格式化列表,

    Includes:允许使用SSI。这些设置可以复选。

    All:则可以做任何事,但不包括MultiViews。

    AllowOverride:加None参数表示任何人都可以浏览该目录下的文件。
     另外的参数有:FileInfo、AuthConfig、Limit。

  10、Port

  默认值:Port 80

  设置服务器监听的网络端口;

  11、ServerAdmin

  设定管理员的电子邮件地址;

  12、ServerName

  设定服务器的主机名称;

  13、ServerRoot

  默认值:ServerRoot /etc/httpd/

  设定服务器的根目录;

  14、User && Group

  指定服务器用来回答请求的用户ID和组ID;

  二、性能和资源配置命令
  

  1、进程控制

  1.1、MaxClients

  默认值:MaxClients 150

  设定能同时服务的请求数目;

  1.2、MaxRequestsPerChild

  默认值:MaxRequestsPerChild 0

  设置每个进程能够响应的最大请求数,0表示不限制;

  1.3、MaxSpareServers

  默认值:MaxSpareServers 10

  设定最大空闲服务进程数目;MinSpareServers设定最小空闲服务进程数目;

  1.4、ServerType

  默认值:ServerType standalone

  设定系统执行服务器的方式;

  1.5、StartServer

  默认值:StartServer 5

  服务器启动时建立的子进程的数目;

  1.6、ThreadsPerChild

  默认值:ThreadsPerChild 50

  设定Apache服务器使用的线程数;

  1.7、Timeout

  默认值:Timeout 300

  设定处理一个请求的超时值;

  2、建立持续连接

  2.1、KeepAlive

  默认值:KeepAlive ON

  设定在Apache中打开或者关闭TCP连接

  2.2、KeepAliveTimeout

  默认值: KeepAliveTimeout 5

  设定在Apache关闭TCP连接等待的时间;

  2.3、MaxKeepAliveRequests

  默认值:MaxKeepAliveRequests 100

  设定持续连接时每个连接的最大请求数;

  3、控制系统资源

  3.1、RLimitCPU

  控制Apache进程占用CPU的时间;

  3.2、RLimitMEM

  控制Apache进程的内存占用量;

  3.3、RLimitNPROC

  设定每个用户并发进程的最大数目;

  4、动态装载模块

  4.1、AddModule

  装入当前服务器不使用的预编译模块;

  4.2、ClearModuleList

  清除预编译模块列表;

  三、标准容器命令
  

  1、<Directory>

  <Directory>和</Directory>容器指令,应用到指定的目录及其子目录上;

  2、<DirectoryMatch>

  <DirectoryMatch>和</DirectoryMatch>除了使用规则表达式作为参数和不需要通配符~之外,和

  <Directory>类似;

  3、<File>

  <File>和<File>容器用来设置通过文件名访问;

  4、<FilesMatch>

  和<File>类似,但不能使用通配符~;

  5、<Location>

  <Location>和</Location>容器命令用来提供通过URL的访问控制。

  6、<LocationMatch>

  <LocationMatch>和<Location>相同,只是不能使用通配符~。

  四、虚拟主机命令
  

  1、<VirtualHost>

  定义特定的虚拟主机。

  2、NameVirtualHost

  如果使基于名称的虚拟主机,则要使用此命令。

  3、ServerAlias

  针对含有多个IP名称的基于名称的虚拟主机。可以使用单独的虚拟主机命令定义所有的IP名称。

  五、日志命令
  

  1. ErrorLog

  默认值:ErrorLog logs/error_log

  设定错误日志文件。

  2. LockFile

  默认值:LockFile logs/accept.lock

  用来设置锁文件的路径,确保只有Apache服务器才拥有此文件的读写权限。

  3. PidFile

  默认值:PidFile logs/httpd.pid

  设定Apache服务器记录守护进程的进程ID的文件。

  4. ScoreBoardFile

  默认值:ScoreBoardFile logs/apache_status

  设置存储内部进程数据文件的路径。

  六、认证安全命令
  

  1. AllowOverride

  默认值:AllowOverride All

  当服务器找到AccessFileName指定的文件时,需要知道该文件中的那些指令可以覆盖在配置文件中稍早出现的指令。

  AllowOverride可以设为None,此时不会读取该文件的内容,如果设为All,服务器将允许所有的指令。

  2. AuthName

  为某个要求认证的资源设定标号。

  3. Authtype

  为某个目录选择使用的认证类型。

  4. HostNameLookups

  默认值:HostNameLookups Off

  设置Apache允许或者禁止为每个请求而进行DNS查找。

  5、<Limit>

  <Limit>和<Limit>包装起来的指令只应用到指定的任何有效的HTTP存取方式上。

  6、require

  这个指令选择经过验证可以存取目录的使用者。

  7、Satisfy

  如果已经建立了基本的HTTP认证配置,且同时使用了allow和require命令,则可用使用此命令来配置Apache在什么条件才能满足认证的要求。
  

  标准模块

  1. mod_access

  提供以客户端的主机名称或者IP地址为基础的存取控制。

  1.1、allow

  典型应用是在<Limit>容器中,用来允许符合条件的主机存取。

  1.2、deny

  典型应用是在<Limit>容器中,用来禁止符合条件的主机存取。

  1.3、order

  用来控制allow指令和deny指令的次序。

  2. mod_actions

  能够提供基于MIME类型的CGI脚本或HTTP请求方法。

  2.1、Action

  对特定的MIME-type指定一个操作。

  2.2、Script

  此命令和Action相似,但不是将操作和MIME-type联系起来,而是将操作和HTTP的请求方法联系起来,如GET、PUT等。

  3. mod_alias

  3.1、Alias

  该指令可以是文件存放在DocumentRoot之外的本地文件系统里。

  3.2、Redirect

  该指令将旧的URL重定向到新的URL。

  3.3、RedirectMatch

  与Redirect类似,但它使用规则表达式而不是简单的URL。

  3.4、RedirectTemp

  和Redirect类似,它让客户端知道重定向只是临时的。

  3.5、RedirectPermanent

  和Redirect类似,它让客户端知道重定向是永久的。

  3.6、ScriptAlias

  该指令除了把目标目录标记为包含CGI脚本以外,和Alias功能相同。

  3.7、ScriptAliasMatch

  该指令出使用规则表达式以外,和ScriptAlias命令相似。

  4. mod_asis

  允许定义文件的类型,这样,Apache可以不加HTTP头标(headers)传送它们。

  5. mod_auth

  5.1、AuthGroupFile

  该指令用来设置包含用来执行用户验证的使用者组列表的文本文件。

  5.2、AuthUserFile

  该指令用来设置包含用来执行用户验证的使用者以及密码列表的文本文件。

  6. mod_auth_anno

  允许以匿名方式访问需要认证的区域。

  7. mod_auth_db

  用户认证数据库

  8. mod_auth_external

  使Apache支持第三方认证。

  9. mod_autoindex

  当由DriectoryIndex指定的索引文件不存在时,该模块使Apache生成动态模块列表。

  9.1、AddAlt

  当FancyIndexing处于打开状态时,此命令设置代替图标的正文。

  9.2、AddAltByEncoding

  当FancyIndexing处于打开状态时,此命令用来为一个或多个MIME-encoding指定正文。

  9.3、AddAltByType

  此命令用于为文件设置代用正文以代替用于FancyIndexing的图标。

  9.4、AddDescription

  该命令设定某文件要显示的描述,供象征索引(FancyIndexing)使用。

  9.5、AddIcon

  该命令设定显示在文件名之后的图标供象征索引使用。

  9.6、AddIconByEncoding

  该命令设定显示在有MIME-encoding的文件名之后的图标供象征索引使用。

  9.7、AddIconByType

  该命令设定显示在MIME-type的文件名之后的图标供象征索引使用。

  9.8、DefaultIcon

  设定不知道指定的图标是什么的时候显示的图标。

  9.9、DirectoryIndex

  设定当客户端没有指定以文件形式结尾的目录名称请求该目录的索引时所要找寻的来源列表。

  9.10、FancyIndexing

  设定目录的象征索引列表。

  9.11、HeaderNmae

  设定插入索引列顶部的文件名。

  9.12、IndexIgnore

  设定列目录时需要隐藏的文件。

  9.13、IndexOptions

  设定进行目录索引时的选项。

  9.14、ReadmeName

  设定要附加到索引文件后面的文件名。

  10. mod_cgi

  支持CGI。

  11. mod_dir

  其唯一的指令是DirectoryIndex,设定当客户端没有指定以文件形式结尾的目录名称请求该目录的索引时所要找寻的来源列表。

  12. mod_env

  将环境变量传递给CGI或SSI脚本。

  12.1、PassEnv

  此命令告诉模块从服务器的环境中传递一个或多个环境变量到CGI或SSI脚本。

  12.2、SetEnv

  设置环境变量,然后传递给CGI/SSI脚本。

  12.3、UnsetEnv

  从传递给CGI/SSI脚本的环境变量中删除一个或多个环境变量。

  13. mod_imap

  提供图形映射支持。

  14. mod_include

  使支持SSI。

  15. mod_log_config

  支持记录日志。

  16. mod_mime

  提供从文件名决定文件了类型的功能。

  16.1、AddEncoding

  该指令以指定的编码类型把可能作为文件名结尾的扩展名加入文件扩展名列表。

  16.2、AddLanguage

  该指令以指定的语言把可能作为文件名结尾的扩展名加入文件扩展名列表。

  16.3、AddType

  该指令以指定的内容类型把可能作为文件名结尾的扩展名加入文件扩展名列表。

  16.4、TypesConfig

  指定MIME类型配置文件所在的位置。

  17. mod_negotiation

  提供对内容协商的支持。

  18. mod_setenvif

  使你可以创建定制环境变量。

  18.1、BrowserMatch

  此命令用来在规则表达式与模式匹配时设置黄和删除定制环境变量。

  18.2、BrowserMatchNoCase

  在BrowserMatch的功能之外还提供与大小写无关的匹配。

  18.3、SetEnvIf

  能够设置和删除定制的环境变量,可用于所有的请求标题字段。

  18.4、SetEnvIfNoCase

  在SetEnvIf功能之外还提供与大小写无关的规则表达式匹配。

  19. mod_unique_id

  该模块为每个请求提供在非常特殊的条件下保证是唯一的标识符。

  20. mod_userdir

  该模块的指令是UserDir,提供代表使用者的目录。

  扩展模块测试

  21. mod_auth_dbm

  支持使用DBM文件存储基本HTTP认证。

  21.1、AuthDbmGroupFile

  设定包含代验证用户名组列表的文件名。

  21.2、AuthDbmUserFile

  设定包含代验证用户名和密码列表的文件名。

  22. mod_auth_digest

  使用MD5算法来进行用户的认证工作。使用它时,就不能使用mod_digest模块。

  23. mod_cern_meta

  提供对元信息的支持,元信息可以是HTTP头标。

  23.1、MetaFiles

  此命令允许或禁止元标题文件处理。

  23.2、MetaDir

  此命令用来指定存储元标题文件的目录的名称。

  23.3、Metasuffix

  此命令为元信息文件指定文件扩展名。

  24. mod_cookies

  唯一的指令是CookieLog,用来设定记录cookies用的文件名。

  25. mod_digest

  唯一的指令是AuthDigestFile,用来设定包含用户名和密码列表的文本文件的文件名。

  26. mod_dld

  该模块提供在启动时载入可执行文件及模块到服务器里去的功能。

  26.1、LoadFile

  该指令在服务器启动时链接其所指的目的文件或程序库。

  26.2、LoadModule

  该指令链接目的文件或程序库的文件名并且把所指定的模块加入到使用中的模块列表。

  27. mod_example

  唯一指令是Example,该指令设置示例模块的内容句柄显示的说明标志。

  28. mod_expires

  让你确定服务器在响应请求时如何处理Expires HTTP标题。

  28.1、ExpiresActive

  禁止或允许Expires标题生成。

  28.2、ExpiresByType

  指定MIME类型文档的Expires HTTP标题值。

  28.3、ExpiresDefault

  为指定的使用范围内的所有文档设置缺省的过期时间。

  29. mod_headers

  操作HTTP应答标题;提供单独的名为Header的命令。

  30. mod_info

  该模块对服务器的配置提供了全面的描述,其中包括所有安装的模块及其在配置文件中使用的命令;唯一的命令是AddModuleInfo。

  31. mod_log_angent

  允许在单独的日志中存储用户代理的信息。

  31.1、AgentLog

  默认值:AgentLog logs/agent_log

  设定服务器记录及进入请求的文件名。

  32. mod_log_referrer

  提供了将请求中Referer头标写入日志的功能。

  33. mod_nmap_static

  提供经常访问的不改变的文件的列表。

  33.1、MmapFile

  该指令在Apache启动时,将一个或者多个文件映射进内存,Apache关闭时自动删除映射。

  34. mod_proxy

  提供对代理的支持。

  34.1、ProxyRequests

  默认值:ProxyRequests off

  开启或关闭代理服务。

  34.2、ProxyRemote

  将自己的代理服务器匹配接口于另一个代理服务器。

  34.3、ProxyPass

  把一个代理服务器的文档树映射到另一个代理服务器的文档空间。

  34.4、ProxyPassReverse

  建立反向代理。

  34.5、ProxyBlock

  屏蔽向某一主机或域发出的请求。

  34.6、NoProxy

  在内部网络环境下,对ProxyRemote指令产生一些控制,可以指定一个域名、子网、IP地址或主机名,让ProxyRemote指令所指定的代理服务器不对它们作处理服务。

  34.7、ProxyDomain

  设定代理服务器的缺省域名。

  34.8、ProxyReceiveBufferSize

  给所有代理服务器发出的请求设定了网络缓冲大小。

  34.9、CacheRoot

  打开磁盘缓冲功能,必须指定一个目录,以便代理服务器能够写入被缓存的文件。

  34.10、CacheSize

  默认值:CacheSize 5

  指定用作缓存的磁盘空间的大小。

  34.11、CacheGcInterval

  指定Apache每隔多长时间检查缓存目录,删除过期文件。

  34.12、CacheMaxExpire

  默认值:CacheMaxExpire 24

  指定缓存文档的过期时间,以小时计。

  34.13、CacheLastModifiedFactor

  默认值:CacheLastModifiedFactor 0.1

  指定了认为文档过期的时间系数。

  34.14、CacheDirLenth

  指定缓存文件的路径下子目录使用的字符数。

  34.15、CacheDirLevels

  默认值:CacheDirLevels 3

  指定缓存数据文家的子目录的层数。

  34.16、CacheDefaultExpire

  默认值:CacheDefaultExpire 1

  当不知道文件的最后修改时间,该指令提供了缺省的过期时间,以小时计。

  34.17、CacheForceCompletion

  默认值:CacheForceCompletion 90

  该指令告诉代理服务器,即使请求已经取消,也要续传从远端服务器发出的文档。后面的数字表示百分比,也就是文档的90%已经缓存时就续传。

  34.18、NoCache

  该指令指定了由空格分隔的主机、域名、IP地址的列表,对于列表中的对象不执行缓存操作。

  35. mod_rewrite

  提供URL重写功能。

  35.1、RewriteEngine

  默认值:RewriteEngine off

  提供了mod_rewrite模块内的URL重写引擎开关。

  35.2、RewriteOptions

  用指定的选项改变重写引擎的属性。

  35.3、RewriteRule

  定义重写规则。

  35.4、RewriteCond

  给RewriteRule指令定义的重写规则添加额外的条件。

  35.5、RewriteMap

  利用映射图方便了关键字到值的查找。

  35.6、RewriteBase

  仅当在每一路径配置文件中使用重写规则时才起作用。

  35.7、RewriteLog

  设定重写的日志。

  35.8、RewriteLoglevel

  默认值:RewriteLoglevel 0

  指定重写文件中记录什么类容,0表示不记录任何内容。

  35.9、RewriteLock

  如果想用外部映射程序来生成重写映射图,就可以使用该指令指定一个用作同外部映射程序同步通信的锁定文件。

  36. mod_so

  提供在服务器启动时装载可执行代码和模块的功能。

  36.1、LoadFile

  在服务器启动时链接目标文件或库,还可以用来加载一些模块工作时必须的代码。

  36.2、LoadModule

  该指令链接目标文件或库,并将模块添加到活动模块列表中。

  37. mod_speling

  处理含有错误拼写或错误大小写的URL请求。

  38. mod_status

  允许管理员通过Web监视Apache。

  39. mod_usertrack

  该模块用来产生记录用户在一个站点使用cookies活动的“clickstream”日志。

  39.1、CookieExpires

  该指令设置mod_usertrack模块生成的cookie的生存时间,以秒计。

  39.2、CookieName

  默认值:CookieName Apache

  让用户更改用于跟踪目的的cookie的名称。

  39.3、CookieTracking

  对所有的请求,Apache均发送一个用户跟踪的cookie,该指令可用来在服务器或者目录的基础上禁止该行为。

  40. mod_vhost_alias

  支持动态配置批量虚拟主机。

  40.1、VirtualDocumentRoot

  设置基于服务器名的Apache文档。

  40.2、VirtualDocumentRootIP

  除了用IP地址代替主机名以外,其它功能和VirtualDocumentRoot类似。

  40.3、VirtaulScriptAlias

  该指令告诉Apache在什么地方找到CGI脚本。

  40.4、VirtaulScriptAliasIP

  除了用IP地址代替主机名以外,其它功能和VirtaulScriptAlias类似。

0
相关文章