博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Nginx Lua读取redis 进行权限认证操作
阅读量:6592 次
发布时间:2019-06-24

本文共 966 字,大约阅读时间需要 3 分钟。

之前的csdn找不回来了,决定重新注册一个。望支持~~~

场景:nginx读取redis存储的标识进行重定向或ip拦截

废话不多说,直接lou代码:

location /{	set $tomcat_ip '';	rewrite_by_lua '		local redis = require "resty.redis"		local red = redis::new()				red:set_timeout(1000) -- 1 sec		local ok,err = red:connection("127.0.0.1",6379)		if not ok then			ngx.say("fail to connect: ", err)			return		end				--请注意这里auth的调用过程		local count		count,err = red:get_refused_times()		if 0 == count then 			ok,err = red:auth("aaaa")			if not ok then				ngx.say("fail to auth: ",err)				return			end		elseif err then			ngx.say("failed to get reused times: ", err)			return 		end				local resp,err = red:get("dog")		if not resp then			ngx.say("get msg error: ", err)			return err		end				if resp == ngx.null then			ngx.say("this is not redis data")			return null		end		ngx.var.tomcat_ip=resp		-- ngx.say("set result: ", ok)	';	#echo $tomcat_ip	proxy_pass $tomcat_ip}复制代码

注意: 别忘nginx先加入redis组件~~~

转载于:https://juejin.im/post/5cf5ec4ef265da1b6e658f49

你可能感兴趣的文章
解决eclipse不识别Android手机的问题
查看>>
标准答案-有多少人能分得清值类型和引用类型?
查看>>
Java8-Stream-No.12
查看>>
Java编译那些事儿【转】
查看>>
各种排序算法的总结
查看>>
[.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境【转】...
查看>>
SpringBoot相关
查看>>
[LeetCode] Sudoku Solver 求解数独
查看>>
html5/haXe开发偶感
查看>>
js深入研究之神奇的匿名函数类生成方式
查看>>
The life cycle of a typical project 一个典型的项目生命周期
查看>>
推荐F#最近的一些资源
查看>>
Linux文件操作
查看>>
ylbtech-Recode(记录)-数据库设计
查看>>
运动目标跟踪与检测的源代码(CAMSHIFT 算法)
查看>>
PHP工厂模式的简单实现
查看>>
线程同步中异常情况的处理
查看>>
Orchard模块开发全接触3:分类的实现及内容呈现(Display)
查看>>
JQuery 自动触发事件
查看>>
ylbtech-LanguageSamples-CommandLine(命令行参数)
查看>>