Nginx用户访问及密码验证

在 nginx 下,提供了 ngx_http_auth_basic_module 模块实现让用户只有输入正确的用户名密码才允许访问web内容。默认情况下,nginx 已经安装了该模块。所以整体的一个过程就是先用第三方工具设置用户名、密码(其中密码已经加过密),然后保存到文件中,接着在 nginx 配置文件中根据之前事先保存的文件开启访问验证。

生成密码可以使用 htpasswd

1、编辑配置文件

[root@web01 extra]# vim www.conf

   

#暴露BD端excel数据目录
location /excelData {
        auth_basic            "Please input password";
        auth_basic_user_file /data/www/php_xiuxiu_admin/htpasswd;
        alias  /data/www/php_xiuxiu_admin/storage/app/tmpExcel/ ;
        autoindex on;                        #    //开启目录浏览功能;   
        autoindex_exact_size off;    #/ 关闭详细文件大小统计,让文件大小显示MB,GB单位,默认为b;   
        autoindex_localtime on;       #  开启以服务器本地时区显示文件修改日期!   
}

2、使用htpasswd生成密码文件

[root@web01 extra]# which htpasswd  #查看是否安装htpasswd

/usr/bin/which: no htpasswd  

安装httpd,因为htpasswd是Apache的Web服务器内置工具,用于创建和更新储存用户名、域和用户基本认证的密码文件。

[root@web01 extra]# yum -y install httpd  #安装httpd

[root@web01 extra]# which htpasswd  #查看是否安装

[root@web01 extra]# rpm -qf /usr/bin/htpasswd  #查看是否安装

[root@web01 extra]# htpasswd -cb /application/nginx/conf/htpasswd ceshi 123789  #生成密码文件

[root@web01 extra]# chmod 400 /application/nginx/conf/htpasswd  #为了安全设置文件权限

3、检查语法并重启

[root@web01 extra]# /application/nginx/sbin/nginx -t

[root@web01 extra]# /application/nginx/sbin/nginx -s reload

1. 浏览器查看

(1)输入www.etiantian.org-->输入用户名密码-->登录成功

(2)不输入用户名或密码,则报错401未授权

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值