AllowOverride无,和.htaccess有效

时间:2013-08-13 08:01:56

标签: .htaccess apache2

嗯,这还不是问题,但我不明白为什么Apache正在阅读.htaccess文件......我这样做:

grep -R "AllowOverride" /etc

我有:

/etc/apache2/apache2.conf:# for additional configuration directives.  See also the      AllowOverride
/etc/apache2/sites-available/default:       AllowOverride None
/etc/apache2/sites-available/default:       AllowOverride None
/etc/apache2/sites-available/default:   #   AllowOverride None
/etc/apache2/sites-available/default:#        AllowOverride None
/etc/apache2/sites-available/default-ssl:       AllowOverride None
/etc/apache2/sites-available/default-ssl:       AllowOverride None
/etc/apache2/sites-available/default-ssl:       AllowOverride None
/etc/apache2/sites-available/default-ssl:       AllowOverride None
/etc/apache2/conf.d/security:#  AllowOverride None
/etc/apache2/conf.d/localized-error-pages:#        AllowOverride None
/etc/apache2/mods-available/userdir.conf:                AllowOverride FileInfo AuthConfig Limit Indexes
/etc/apache2/mods-available/alias.conf:    AllowOverride None
/etc/apache2/sites-enabled/000-default:     AllowOverride None
/etc/apache2/sites-enabled/000-default:     AllowOverride None
/etc/apache2/sites-enabled/000-default: #   AllowOverride None
/etc/apache2/sites-enabled/000-default:#        AllowOverride None
/etc/apache2/mods-enabled/alias.conf:    AllowOverride None
grep: /etc/blkid.tab: No such file or directory

似乎我没有AllowOverride all,为什么它有效?

1 个答案:

答案 0 :(得分:2)

但你有:

/etc/apache2/mods-available/userdir.conf:  AllowOverride FileInfo AuthConfig Limit Indexes

虽然这与userdir配置有关,但在此上下文中,FileInfo覆盖是apache读取htaccess文件的最低要求。

AllowOverride documentation中,我们有:

  

<强>的FileInfo

     

允许使用控制文档类型的指令(DefaultType,ErrorDocument,ForceType,LanguagePriority,SetHandler,SetInputFilter,SetOutputFilter和mod_mime Add *和Remove *指令等),文档元数据(Header,RequestHeader,SetEnvIf,SetEnvIfNoCase) ,Browser_Match,CookieExpires,CookieDomain,CookieStyle,CookieTracking,CookieName),mod_rewrite指令(RewriteEngine,RewriteOptions,RewriteBase,RewriteCond,RewriteRule),mod_alias指令(Redirect,RedirectTemp,RedirectPermanent,RedirectMatch)和mod_actions中的Action。

AllowOverride 是除“None”之外的任何内容时,将读取htaccess文件,并且根据覆盖选项,htaccess文件中的某些语句将被接受。恰好,FileInfo选项涵盖了htaccess文件中的许多常用指令。