1. 安装 htpasswd 工具
yum install httpd-tools -y
设置用户名和密码,并把用户名、密码保存到指定文件中:
sudo mkdir /app/nginx/pass -p
创建用户和密码文件
sudo htpasswd -c /app/nginx/pas/passwd.db root #创建密码文件和用户root
sudo htpasswd /app/nginx/pas/passwd.db test #添加用户test
2. 修改 nginx 配置文件
找到 nginx 配置文件,因为我们要对整个站点开启验证,所以在配置文件中的第一个server修改如下:
server {
listen 80;
server_name localhost;
.......
#新增下面两行
auth_basic "Please input password"; #这里是验证时的提示信息
auth_basic_user_file /app/nginx/pas/passwd.db; # 这里是密码文件,可以填写绝对路径
location /{
.......
}
3. htpasswd 命令
htpasswd命令选项参数说明:
-c 创建一个加密文件
-n 不更新加密文件,只将htpasswd命令加密后的用户名密码显示在屏幕上
-m 默认htpassswd命令采用MD5算法对密码进行加密
-d htpassswd命令采用CRYPT算法对密码进行加密
-p htpassswd命令不对密码进行进行加密,即明文密码
-s htpassswd命令采用SHA算法对密码进行加密
-b htpassswd命令行中一并输入用户名和密码而不是根据提示输入密码
-D 删除指定的用户