为什么 AuthType Basic 指令在 .htaccess 中不起作用

为什么 AuthType Basic 指令在 .htaccess 中不起作用

我有一个在 ClearOs 6 上运行的 Web 服务器。我想使用 .htaccess 保护几个目录,但似乎根本没有提示我输入密码。conf 文件的相关部分如下:

LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_file_module modules/mod_authn_file.so

<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory "/var/www/html">
    Order allow,deny
    Allow from all
</Directory>
AccessFileName .htaccess
<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
    Satisfy All
</Files>
LogLevel debug
<Directory "/var/www/icons">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
<Directory "/var/www/cgi-bin">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>
<VirtualHost *:80>
    DocumentRoot /var/www/html
    ErrorLog /var/log/httpd/error_log
    CustomLog /var/log/httpd/access_log combined
</VirtualHost>

<Directory /var/www/html>
    Options +Indexes +FollowSymLinks +IncludesNOExec
    AllowOverride All
    Order deny,allow
    Allow from all
    AddType text/html .php
    AddHandler php5-script .php
</Directory>

我的文件夹 /var/www/html/hidden 中的 .htaccess 文件如下所示:

AuthName "Restricted Area"
AuthUserFile /var/www/users
AuthGroupFile /var/www/group
AuthName ByPassword
Authtype Basic
Require user johnsmith

/var/www/用户:

johnsmith:GibberishChangedForHackers

/var/www/group 是空的。

如果我尝试访问 hidden/index.html,则无需密码提示即可访问。错误日志中没有显示任何内容。访问日志显示访问正常。

如果我不使用 .htaccess,而是在元素中添加相同的 auth 指令<Directory /var/www/html/hidden>,系统会要求我输入密码,并且 ao 授权确实有效。

如果我向 .htacess 添加无效指令,我会收到服务器错误,并在错误日志中记录一条条目,因此 .htaccess正在被 Apache 解析。

相关内容