我正在运行Apache / 2.4.7(Ubuntu)Server,并且试图保护位于'myFolder'的目录/var/www/html/myFolder之一

我在/etc/apache2/apache2.conf file中做了以下编辑

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>


<Directory /var/www/html/myFolder>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>

我用以下内容在.htaccess中创建了/var/www/myFolder
AuthUserFile /var/www/html/myFolder/.htpasswd
AuthName "Authorization Required"
AuthType Basic
require valid-user

也由htpasswd创建
htpasswd -c /var/www/html/myFolder/.htpasswd admin

然后提示输入密码。

然后,我尝试在浏览器www.mydoman.com/myFolder/hello.html上访问该文件,并提示输入用户名和密码。但是,身份验证未通过。

这是来自error.log文件的错误

[authz_core:错误] [pid 30042] [客户端xxx.xxx.xx.xxx:53348] AH01629:授权失败(没有经过身份验证的用户):/ myFolder / hello.html

我该如何解决这个问题?

最佳答案

加载的mod-shib2可能导致此问题。根据this bug comment,设置ShibCompatValidUser On可解决该问题。

要求有效用户也可以在启用mod_shib的情况下使用。根据https://wiki.shibboleth.net/confluence/display/SHIB2/NativeSPApacheConfig的说明,仅对于2.5.2和更高版本的shib版本是必需的。请注意ShibCompatValidUser是服务器/虚拟主机选项。

10-08 08:11