nginx 添加 auth 认证
安装 htpasswd
# RHEL / CentOS / Oracle Linux
yum -y install httpd-tools
# Debian,Ubuntu
apt -y install apache2-utils
修改 nginx 的 server 配置文件,添加如下两句
auth_basic "User Authentication"; # 登录时显示的字符
auth_basic_user_file conf/htpasswd.db;
示例:
server {
...
auth_basic "User Authentication";
auth_basic_user_file conf/htpasswd.db;
location /public/ {
auth_basic off;
}
}
生成密码
-c 代表是新建 htpasswd.db 文件,如果有就不用加-c 了 ,不然原来的文件会被覆盖
sudo htpasswd -c /etc/apache2/htpasswd.db user1
FAQ
如果是代理的后端 es 有密码的话,需要把 es 的认证密码也加到 htpasswd 文件里,不然会一直提示密码错误