openresty

Orange:一个基于OpenResty的API网关

orange是一个基于openresty的API Gateway,提供API及自定义规则的监控和管理,如访问统计、流量切分、API重定向、API鉴权、WEB防火墙等功能。Orange可用来替代前置机中广泛使用的Nginx/OpenResty, 在应用服务上无痛前置一个功能丰富的网关系统。它有以下特性:

  • 动态更新Nginx/OpenResty配置而无需重启或reload
  • 通过MySQL存储来简单支持集群部署
  • 支持多种条件匹配和变量提取
  • 支持通过自定义插件方式扩展功能
  • 内置多个通用插件

» 阅读全文

关键词: orange , openresty

openresty+Lua构建高性能、高可靠、安全的登陆校验

openresty+lua构建高性能、高可靠、安全的登陆校验,主要目的的访问伪造 cookie 进行登录。在webserver层进行校验,直接告诉应用层校验结果,就可以避免上面的问题。openresty+Lua就是这样一种webserver上安全、稳定、高性能的实现,并且开发成本低的方案。


新建,access.lua 代码:


local secretkey='1234567890abcdefghi'
if ngx.var.cookie_uid == nil or ngx.var.cookie_username == nil or ngx.var.cookie_token ==nil then
ngx.req.set_header("Check-Login", "NULL")
return
end


» 阅读全文

关键词: lua , openresty

利用openresty+lua+redis 实现封杀频繁恶意访问IP地址

      Nginx来限制访问控制的方法有多种,nginx主要有2个模块控制,但是那些不支持自定义,非常死,在大多数场景下并不实用。今天分享一个:利用openresty+lua+redis 实现封杀频繁恶意访问IP地址,当然这个方式也是有弊端的,那就是不断试用代理 IP之类的,但是用户还是有的,起码提高了恶意的成本。

      本人最近已经完全抛弃了淘宝的Tengine,原生态的nginx,已经换为春哥的 openresty,特别想说的一点就是淘宝的 low 逼货,感觉一堆问题,尼玛,可能和他缘分不够吧,哈哈,于是,换到春哥的 openresty。喜欢春哥的 openresty 的最重要的原因,不外乎openresty打包了 nginx 的时候,集成了很多的有用的扩展,特别是 lua,一个小巧的编程语言,各种爽歪歪。本文就是:openresty最新稳定版本+lua Lua 5.1.4+redis最新稳定版本 

     如果你是原生态的 nginx,那你就自己安装 lua 和 nginx 的扩展吧,或者直接安装 openresty so easy。

先在 http 中加载lua 包和 lua 的 c 包

lua_package_path "/usr/local/openresty/lualib/?.lua;;";

lua_package_cpath "/usr/local/openresty/lualib/?.so;;";

1.png - 大小: 85.62 KB - 尺寸: 934 x 482 - 点击打开新窗口浏览全图

» 阅读全文

关键词: lua , openresty , redis