Nginx 设置密码/开启密码验证/需用户名密码才能访问
Thursday, Jul 16, 2020
这次阿航需要为公司的某网站开启远程访问, 但是仅允许公司内部员工使用. 本篇文章就来记录下如何为Nginx 设置密码/开启密码验证/需用户名密码才能访问.
效果 有图有真相, 我们最终要实现的效果如下:
用户名与密码输入正确
尝试匿名访问
前置条件 掌握Nginx基础. 掌握bash/shell的基本命令. 本篇文章的环境:
实战开始 安装生成账号密码工具 `yum install httpd-tools` [epcl_box type=“notice”]如果yum下载过慢, 请阅读这篇文章 开启加速.[/epcl_box]
如果提示Is this ok [y/d/N]:, 输入y并点击回车.
生成账号密码 输入以下命令, 生成账号密码文件:
`htpasswd -bc 文件路径 用户名 密码` 比如:
`htpasswd -bc /usr/root.db root 123456` 为nginx配置账号密码校验 进入nginx配置文件. 找到你要添加账号密码验证的server. 为其添加两行代码:
`server { listen 80; server_name hello.com; auth_basic "Please enter password"; # 密码提示 auth_basic_user_file /usr/root.db; # 填写上面你生成的账户密码文件路径 location / { root /usr/share/nginx/html; index index.html index.htm; } }` 重启nginx(两种方式, 按需选择):