Раздел вопрос-ответ Как установить пароль на все nginx хосты (через auth_basic)?

Как на nginx установить пароль на все виртуальные хосты (auth_basic on)? А затем отключить пароль для одного из виртуальных хостов? 

Чтобы при добавлении нового nginx хоста он изначально был запаролен.

share

1 ответ

Cоздать общий htpasswd-файл (скажем, /etc/nginx/access.htpasswd).

В общем для всех хостов Nginx конфиге /etc/nginx/nginx.conf добавить в секцию http:
##
# Set password for all hosts
##
auth_basic           "Control Panel";
auth_basic_user_file /etc/nginx/access.htpasswd;
satisfy any;
allow 127.0.0.1;
deny  all;
 
Для отключения пароля (выключения авторизации) на определённом хосте в конфиг хоста в секцию server добавить:
auth_basic off;
allow all;

Не забываем делать nginx reload.

Добавить комментарий
    как минимум 5 символов

    icon Вход в систему

    зарегистрироваться