Строка location /home/user/domains/example.com/public_html/lockfolder/
неверна, так как она использует путь к файловой системе, а location
работает с URI. Правильная конфигурация будет выглядеть так:
location /lockfolder/ {
auth_basic "Restricted";
auth_basic_user_file /path/to/htpassd;
}
Ожидается, что запросы будут ограничены до http://www.example.com/lockfolder/something
.
Еще одна возможная ловушка - это другие места, особенно более конкретные и / или задается регулярными выражениями. Вы должны убедиться, что указанное вами местоположение действительно соответствует запросам, которые вы хотите сопоставить. См. http://nginx.org/r/location для документации по деталям сопоставления местоположения.
Попробуйте следующее:
location /lockfolder {
auth_basic "Restricted";
auth_basic_user_file htpasswd;
}
Начиная с версии 0.6.7, путь auth_basic_user_file определяется относительно каталога файла конфигурации nginx nginx.conf. Если установлен Apache, вы можете создать файл паролей с помощью прилагаемой программы htpasswd.