apache2.4 虚拟主机使用 authz_core 日志阻止访问,即使未配置 authz

apache2.4 虚拟主机使用 authz_core 日志阻止访问,即使未配置 authz

403: Forbidden因此,我的一个 apache2.4 虚拟主机上出现了错误。

有趣的是,有/var/log/apache2/error.log报道称:

authz_core:error] [pid 4878:tid 140394394269440] [client 10.214.154.19:33009] AH01630: client denied by server configuration

并且......虽然我确实有其他使用 authz 的虚拟主机(主要用于 subversion 托管),但我禁用了除我遇到问题的那个之外的所有其他主机,重新启动了 Apache,没有明显的区别。

这是我的 Apache2 站点可用文件,即使我已禁用所有其他主机配置,并将我的配置精简到最低限度,但仍然拒绝访问。

<VirtualHost *:443>

  WSGIScriptAlias /example /data/example/example.wsgi

  <Directory /data/example>
    WSGIApplicationGroup %{GLOBAL}
    Order deny,allow
    Allow from all
    Require all granted
  </Directory>

  LogLevel info

  SSLEngine on
  SSLCertificateFile    /etc/ssl/certs/example.pem
  SSLCertificateKeyFile /etc/ssl/private/example.key

</VirtualHost>

此外,为了验证它不是我的 wsgi 脚本,我用以下脚本替换了该脚本:

def application(environ, start_response):
        start_response('200 OK',[('Content-type','text/html')])
        return ['<html><body>Hello World!</body></html>']

这并没有什么明显的区别。

有任何想法吗?

答案1

正如所指出的Apache“服务器配置拒绝客户端”,尽管允许访问目录(vhost 配置)问题在于 Apache 2.4 改变了授权配置的方式。authz_core 模块实际上是内置的,这似乎是一个混乱的根源。

如果您只是删除 Order 和 Allow 行,事情就会按预期进行。请参阅http://httpd.apache.org/docs/2.4/upgrading.html了解详情。

相关内容