Apache-2.2
Apache .htaccess 錯誤:Debian Wheezy 上的“此處不允許”
我正在嘗試配置一個需要在根目錄中進行密碼保護的 apache 虛擬主機。
所以我創建了一個 .htpasswd 文件(帶有 sha 密碼)並配置了 .htaccess 文件。不管我做什麼,在網頁上我得到一個錯誤 500(內部伺服器錯誤),在 error.log 我看到這個:
/var/www/ninja/www/.htaccess: deny not allowed here
或者如果我將拒絕排除在 .htaccess 之外:
AuthUserFile not allowed here
.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>
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
這是啟用 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
/var/www/ninja/www/ 上的 Apache Directory 指令僅允許
FileInfo Indexes
通過 .htaccess 文件修改 .htaccess 的行為。請參閱有關AllowOverride的 Apache 文件。請修改
AllowOverride
以也允許本地配置AuthConfig
導致:<Directory /var/www/ninja/www/> Options Indexes FollowSymLinks MultiViews AllowOverride FileInfo Indexes Authconfig </Directory>
您的配置應添加AuthConfig限制
AllowOverride FileInfo 索引
變成
AllowOverride FileInfo 索引AuthConfig 限制