在部署web应用服务后,很多场景下需要进行身份认证和访问控制的相关配置,只有在访问者输入了正确的用户密码才允许访问web内容。在这里记录下nginx的简单配置,基于模块ngx_http_auth_basic_module
通过使用HTTP基本认证协议验证用户名和密码来限制对资源的访问。
Nginx认证配置实例
1. 生成认证文件
2. 配置nignx.conf文件
1 2 3 4 5 6 7 8 9
| server{ listen 38443; location / { auth_basic "Please enter your username and password"; auth_basic_user_file /home/htpasswd; autoindex on; } }
|
3. 重启nginx并验证
1 2 3 4
| /etc/init.d/nginx restart
nginx -t # 测试配置是否有误 nginx -s reload # 载入配置文件
|
指定目录设置访问认证
1. 创建类htpassswd文件
1
| wget -c https://www.moerats.com/usr/down/htpasswd.sh;bash htpasswd.sh
|
按照提示输入用户名,密码及认证名。脚本会自动生成认证文件。
2. 配置nginx.conf文件
1 2 3 4 5
| location ^~ /src/ { auth_basic "Authorized users only"; auth_basic_user_file 这里写前面脚本返回的文件路径; }
|
最后再按照上述方式进行重启验证即可。