nginx如何设置用户访问限制

明天3月8号妇女节了,给项目组里面的唯一美女keke做了个相册,提前祝美女们节日快乐了,由于时间紧迫也没做用户权限系统,索性就用nginx配置了访问限制。
其实主要的是两行当面。

auth_basic_user_file /usr/local/nginx/conf/passwd;
auth_basic 'please input user code'

其中 passwd
是用

htpasswd -c ./passwd  username 

输入两次密码就生成了

这时候又来了需求了,我又想根据不通的ua信息 启用或者禁用 auth_basic
当时思路是把

if ($http_user_agent !~* "ua text string") {
	auth_basic_user_file
	auth_basic
}

这样会报错,这个配置不允许放在 if里面
后来根据设置变量的形式解决了,又get新技能了。苦逼青年欢乐多~~~~

set $auth_basic off;
if ($http_user_agent !~* "ua text string") {
	set $auth_basic Restricted;	
}
auth_basic $auth_basic;	

最后全量代码

listen       80;
server_name keke.ibeeger.com;
index  index.html index.htm default.html default.htm;
root  /data/view/keke;
auth_basic_user_file /usr/local/nginx/conf/passwd;
location / {
	set $auth_basic off;
	if ($http_user_agent !~* "abcdefglalalalal") {
		set $auth_basic Restricted;	
	}
	auth_basic $auth_basic;	
}
access_log /data/logs/keke.log;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值