В отличии от Apache, в nginx не используется .htaccess файл. Но защитить паролем сайт в Nginx можно с помощью модуля HttpAuthBasic.

Для того, чтобы защитить какую-либо директорию с помощью пароля, вам нужно прописать следующие директивы в конфигурационном файле Nginx вашего сайта:

/etc/nginx/sites-enabled/mysite

location @puma {

auth_basic “Unauthorized”;
auth_basic_user_file /var/www/mysite.com/.htpasswd;
}

Это защитит паролем весь сайт, а также все вложенные директории.

Директивой auth_basic_user_file вы можете указать файл с паролем.

Файл htpasswd должен содержать имена пользователей и их пароли. При этом пароли должны быть закодированы с помощью функции crypt(3).

Создаем файл с пользователями:
htpasswd -c -d /var/www/mysite.com/.htpasswd USERNAME

Для добавления последующих:
htpasswd -d /var/www/mysite.com/.htpasswd NEWUSERNAME

Если система “жалуется” на отсутствие команды htpasswd, установите apache2-utils:
apt-get install apache2-utils

Читать далее

Nginx+puma: защита сайта паролем
Adblock detector