Apache配置文件详解之httpd.conf(2)
一. <directory> </directory>语指令句
(说明:<directory>path</directory>主要是对目录文件访问权限的控制)
我们都知道Apache配置文件:httpd.conf文件中有这么几行内容,如下
<Directory />
AllowOverride none
Require all denied
</Directory>
这几句内容告诉我们Apache默认对根目录的访问权限为拒接所有的访问,并且.htaccess 文件将被完全忽略.
下面我们将为大家详细介绍一下关于<directory> </directory>语句里面的参数的定义
通常<directory> </directory>指令语句包括以下三个定义,如下
<Directory />
AllowOverride None
Options None
Require all granted
</Directory>
1.1 AllowOverride:AllowOverride从字面上解释是允许覆盖的意思,即Apache允许另一配置文件覆盖现有配置文件
AllowOverride None 不读取.htaccess,完全忽视.htaccess文件 AllowOverride all 允许.htaccess所有指令,缺省是all AllowOverride Limit .htaccess函盖具体限定的主机(allow,deny) AllowOverride AuthConfig .htaccess函盖跟认证有关指令(AuthType,AuthName) |
我们通常利用Apache的rewrite模块对URL进行重写,rewrite规则会写在 .htaccess 文件里。但要使 apache 能够正常的读取.htaccess 文件的内容,就必须对.htaccess 所在目录进行配置。从安全性考虑,根目录的AllowOverride属性一般都配置成不允许任何Override,即:
< Directory /> AllowOverride None < /Directory>
AllowOverride的参数:
AuthConfig 允许使用与认证授权相关的指令(AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require, 等)。
FileInfo 允许使用控制文档类型的指令(DefaultType, ErrorDocument, ForceType, LanguagePriority, SetHandler, SetInputFilter, SetOutputFilter, mod_mime中的 Add* 和 Remove* 指令等等)、控制文档元数据的指令(Header, RequestHeader, SetEnvIf, SetEnvIfNoCase, BrowserMatch, CookieExpires, CookieDomain, CookieStyle, CookieTracking, CookieName)、mod_rewrite中的指令(RewriteEngine, RewriteOptions, RewriteBase, RewriteCond, RewriteRule)和mod_actions中的Action指令。
Indexes 允许使用控制目录索引的指令(AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName, 等)。
Limit 允许使用控制主机访问的指令(Allow, Deny, Order)。Options[=Option,...] 允许使用控制指定目录功能的指令(Options和XBitHack)。可以在等号后面附加一个逗号分隔的(无空格的)Options选项列表,用来控制允许Options指令使用哪些选项。
如果要多个权限组合使用,用这样的格式写就行了:AllowOverride AuthConfig Indexes
1.2 Option:该参数用于定义对目录的操作权限
option none 禁止对目录的所有操作 option all 允许对目录的所有操作,ALL---所有操作 option ExecCGI 对该目录,可以执行cgi脚本 option Indexes 允许访问该目录(而该目录没有index.html)时,返回目录下的文件列表 option FollowSymLinks 只允许对目录的FollowSymLinks操作 |
本文出自 “菜鸟的成长记” 博客,请务必保留此出处http://blief.blog.51cto.com/6170059/1679427