Apache:“AuthType未设置!”500错误

我使用Apache httpd web服务器已经有一段时间了。 我为一个项目启动本地服务器,当我尝试请求localhost / index.html,我得到一个500错误,我在错误日志中看到:

[Tue Jan 21 09:23:58 2014] [crit] [client ::1] configuration error: couldn't perform authentication. AuthType not set!: /index.html [Tue Jan 21 09:23:58 2014] [error] an unknown filter was not added: DEFLATE [Tue Jan 21 09:23:58 2014] [crit] [client ::1] configuration error: couldn't perform authentication. AuthType not set!: /favicon.ico 

看起来在Apacheconfiguration中可能有2个错误,一个与“AuthType not set!”有关。 并可能另一个与“filter没有添加:DEFLATE”有关。 我不知道这是什么意思或从哪里开始挖掘。

一个基本的谷歌search显示这个链接 ,表明罪魁祸首可能是“要求所有授予”。 这个行在我的httpd.conf中可能涉及到。

 <Directory "/var/www"> AllowOverride None # Allow open access: Require all granted </Directory> 

这个apacheconfiguration大部分是在这个项目的生产中使用的,所以我知道这个工作,只是不在我的工作站上。 这是什么意思,我应该接下来要做什么? 我曾尝试评论“要求所有授予”,并重新启动Apache但无济于事。

在这个问题之后,我也加载了mod_authz_host

 LoadModule authz_host_module modules/mod_authz_host.so 

并添加了“全部允许”,重新启动服务器。 但问题依然存在。 放气问题似乎是不相关的,并且通过添加很容易解决

 LoadModule deflate_module modules/mod_deflate.so 

问题依然存在,我该如何解决这个500错误?

 [Tue Jan 21 09:44:20 2014] [crit] [client ::1] configuration error: couldn't perform authentication. AuthType not set!: /index.html 

删除说的行

 Require all granted 

只有在Apache> = 2.4时才需要

这里的问题可以用另一种方式来阐述:我如何在apache 2.2和2.4中创build一个configuration文件?

Require all granted的只在2.4,但Allow all ...停止工作在2.4,我们希望能够推出一个在两个工程的configuration。

我find的唯一解决scheme是我不确定的是使用:

 # backwards compatibility with apache 2.2 Order allow,deny Allow from all # forward compatibility with apache 2.4 Require all granted Satisfy Any 

这应该可以解决你的问题,至less对我来说是这样。 现在,如果您有更复杂的访问规则,问题可能会更难解决…

另请参阅这个相当类似的问题 。 Debian wiki也有支持2.2和2.4的有用说明 。

另外,这个解决scheme可以用于Apache2版本<2.4以及> = 2.4。 确保“版本”模块已启用:

 a2enmod version 

然后使用这个代码:

 <IfVersion < 2.4> Allow from all </IfVersion> <IfVersion >= 2.4> Require all granted </IfVersion> 

我认为你有一个版本2.4.x的Apache。

你确定你加载这2个模块吗? – mod_authn_core – mod_authz_core

 LoadModule authn_core_module modules/mod_authn_core.so LoadModule authz_core_module modules/mod_authz_core.so 

PS:我对授权和权利的build议是(默认):

 LoadModule authn_file_module modules/mod_authn_file.so LoadModule authn_core_module modules/mod_authn_core.so LoadModule authz_host_module modules/mod_authz_host.so LoadModule authz_groupfile_module modules/mod_authz_groupfile.so LoadModule authz_user_module modules/mod_authz_user.so LoadModule authz_core_module modules/mod_authz_core.so LoadModule auth_basic_module modules/mod_auth_basic.so LoadModule auth_digest_module modules/mod_auth_digest.so 

你可以尝试sudo a2enmod rewrite如果你在你的configuration中使用它。