Apache .htaccess 错误:Debian Wheezy 上的“此处不允许”

Bon*_*usK 11 .htaccess .htpasswd apache-2.2

我正在尝试配置一个需要在根目录中受密码保护的 apache 虚拟主机。

所以我创建了一个 .htpasswd 文件(带有 sha 密码)并配置了 .htaccess 文件。不管我做什么,在网页上我都会收到错误 500(内部服务器错误),在 error.log 中我看到了这个:

/var/www/ninja/www/.htaccess: deny not allowed here
Run Code Online (Sandbox Code Playgroud)

或者如果我将拒绝排除在 .htaccess 之外:

AuthUserFile not allowed here
Run Code Online (Sandbox Code Playgroud)

.htpasswd 和 .htaccess 文件对于 apache 都是可读的,并且被设置为 www-data 用户和组。我也尝试将这些规则添加到虚拟主机配置文件中,但这也没有奏效。

你能帮我一下吗?

谢谢!

配置文件阿帕奇:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName ninja

    DocumentRoot /var/www/ninja/www
    ServerAlias ninja

    <Directory /var/www/ninja/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride FileInfo Indexes
        Order allow,deny
        allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

htaccess 文件:(放置在 /var/www/ninja/www/)

Deny from all
#Allow from (You may set IP here / to access without password)
AuthUserFile /var/www/ninja/.htpasswd   
AuthName authorization
AuthType Basic
require valid-user
Run Code Online (Sandbox Code Playgroud)

这是启用 mods 的目录的 ls

alias.conf -> ../mods-available/alias.conf
alias.load -> ../mods-available/alias.load
auth_basic.load -> ../mods-available/auth_basic.load
authn_file.load -> ../mods-available/authn_file.load
authz_default.load -> ../mods-available/authz_default.load
authz_groupfile.load -> ../mods-available/authz_groupfile.load
authz_host.load -> ../mods-available/authz_host.load
authz_user.load -> ../mods-available/authz_user.load
autoindex.conf -> ../mods-available/autoindex.conf
autoindex.load -> ../mods-available/autoindex.load
cgi.load -> ../mods-available/cgi.load
deflate.conf -> ../mods-available/deflate.conf
deflate.load -> ../mods-available/deflate.load
dir.conf -> ../mods-available/dir.conf
dir.load -> ../mods-available/dir.load
env.load -> ../mods-available/env.load
mime.conf -> ../mods-available/mime.conf
mime.load -> ../mods-available/mime.load
negotiation.conf -> ../mods-available/negotiation.conf
negotiation.load -> ../mods-available/negotiation.load
php5.conf -> ../mods-available/php5.conf
php5.load -> ../mods-available/php5.load
reqtimeout.conf -> ../mods-available/reqtimeout.conf
reqtimeout.load -> ../mods-available/reqtimeout.load
setenvif.conf -> ../mods-available/setenvif.conf
setenvif.load -> ../mods-available/setenvif.load
status.conf -> ../mods-available/status.conf
status.load -> ../mods-available/status.load
Run Code Online (Sandbox Code Playgroud)

HBr*_*ijn 14

/var/www/ninja/www/ 上的 Apache Directory 指令仅允许FileInfo Indexes通过 .htaccess 文件修改行为。请参阅有关AllowOverride的 Apache 文档。

请修改AllowOverride以也允许本地配置AuthConfig导致:

<Directory /var/www/ninja/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride FileInfo Indexes Authconfig
</Directory>
Run Code Online (Sandbox Code Playgroud)


小智 6

你的配置应该添加AuthConfig限制

AllowOverride FileInfo 索引

成为

AllowOverride FileInfo 索引AuthConfig 限制