Nginx使用ngx_http_auth_basic_module
模块实现basic auth,该模块默认是安装的。
生成用户密码文件
使用htpasswd
创建用户密码文件:
htpasswd -c -d filename username
然后会提示输入密码。
如果没有安装 htpasswd,使用以下命令安装:
Ubuntu
apt install apache2-utils
CentOS
yum install httpd-tools
将生成用户密码文件放到nginx配置目录 /usr/local/nginx/conf/
或其他目录
这里注意htpasswd文件或所在目录的权限,如果没有权限就会打开失败,返回500内部服务器错误。
Nginx配置basic auth
在location中添加如下配置:
location / {
auth_basic "登录认证";
auth_basic_user_file /usr/local/nginx/conf/htpasswd;
}
重启Nginx
nginx -s reload
在浏览器打开的时候,会弹出输入用户名密码的对话框。