Я следил за руководством Apache по использованию модуля mod-auth-digest, но не могу заставить его работать должным образом. Мои тестовые файлы .htaccess и .htpasswd находятся в 'localhost / php / private', а содержащий код:
.htaccess:
<Location /private/>
AuthType Digest
AuthName "protected"
AuthDigestDomain /private/ http://localhost/php/private/
AuthDigestFile C:/dev/xampp/htdocs/php/private/.htpasswd
require valid-user
</Location>
.htpasswd:
somedude:protected:e0529e7873a39baca5a9906364258014
#user = somedude, pwd = pwd
Браузер продолжает возвращать ошибку 500. В соответствующей записи журнала ошибок apache указано «Местоположение здесь запрещено», но Google, похоже, не располагает какой-либо полезной информацией об этой ошибке.
Базовый тест mod-auth раньше работал нормально, и, согласно php-info (), загружается модуль mod-auth-digest. Я не могу понять, что случилось, может ли кто-нибудь помочь?
вы должны использовать AuthUserFile, так как AuthDigestFile устарел с apache 2.2.
Видеть http://wiki.apache.org/httpd/InvalidCommandAuthDigestFile
Это потому, что Location не разрешено внутри контекста .htaccess. Какая-либо конкретная причина, по которой вам нужно указать Location, а не просто поместить файл .htaccess в папку, которую вы хотите защитить?
Если вам действительно нужно указать Location, вам придется сделать это прямо в конфигурации Apache.