Apache 2.4:带有 .htaccess 的公共子目录

Apache 2.4:带有 .htaccess 的公共子目录

我目前正在升级到 Apache 2.4。

现在让我困惑的是,如何仅使用 .htaccess 创建公共子目录。外部目录受以下保护:AuthType Basic

以前,该目录包含以下 .htaccess:

Satisfy Any
Allow from all

我不知道如何在 Apache 2.4 中重现此问题。我尝试了以下任意组合,但都没有成功:

AuthType None
Require all granted
AuthMerging Or

答案1

我在这里测试过,它对我有用。检查.htaccess每个目录是否正在读取文件;也许可以暂时在子目录上启用不同的身份验证,AuthName以便您可以验证。

以下是我的设置,希望对您有用。启用身份验证的目录是authtest;其子目录noauth已禁用身份验证。

$ /usr/sbin/apache2 -v
Server version: Apache/2.4.7 (Debian)
Server built:   Jan  2 2014 01:47:52
$ cat /etc/apache2/conf-enabled/allow-htaccess-authtest.conf 
<Directory /var/www/html/authtest>
    AllowOverride AuthConfig
</Directory>
$ cat /var/www/html/authtest/.htaccess 
AuthType Basic
AuthName "ahoy hoy"
AuthUserFile /home/fission/htpasswd
Require valid-user
$ cat /var/www/html/authtest/noauth/.htaccess 
AuthType None
Require all granted

该语法直接取自Apache 文档mod_authn_core

相关内容