我正在运行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是服务器/虚拟主机选项。