Apache之AllowOverride参数详解
通常利用Apache的rewrite模块对URL进行重写的时候,rewrite规则会写在.htaccess文件里。但要使apache能够正常的读取.htaccess文件的内容,就必须对.htaccess所在目录进行配置。从安全性考虑,根目录的AllowOverride属性一般都配置成不允许任何Override,即:
<Directory/>
AllowOverrideNone
</Directory>
在AllowOverride设置为None时,.htaccess文件将被完全忽略。当此指令设置为All时,所有具有“.htaccess”作用域的指令都允许出现在.htaccess文件中。
而对于URLrewrite来说,至少需要把目录设置为:
<Directory/myblogroot/>
AllowOverrideFileInfo
</Directory>
而对于URLrewrite来说,至少需要把目录设置为:
AllowOverride的参数:
AuthConfig
允许使用与认证授权相关的指令(AuthDBMGroupFile,AuthDBMUserFile,AuthGroupFile,AuthName,AuthType,AuthUserFile,Require,等)。
FileInfo
允许使用控制文档类型的指令(DefaultType,Document,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指令使用哪些选项。