为 VeryNginx 开发了新的自定义动作模型,目前已经完成了前端的规则编辑器部分,剩下 Lua 部分还没完成,快的话差不多周日晚上可以和大家见面
当前版本的 VeryNginx 可以配置一些自定义动作,例如
这样进行配置有一些限制,例如并不能根据多个条件并列进行过滤,不能根据域名进行重定向等等...
这次设计了新的自定义动作模型,由 Matcher 和 Action 组成。 Matcher 用来对请求进行匹配, Action 为要执行的动作。新结构的优势在于把所有的前置判断整合在一起来实现了,使复杂(组合)规则的实现变成了可能
一个 Matcher 用来判断一个 Http 请求是否符合指定的条件, 一个 Matcher 可以包含一个或者多个约束条件,目前支持以下几种约束:
当一个请求满足了 Matcher 中包含的全部条件时,即命中了这个 Matcher
每个 Action 会引用一个 Matcher ,当 Matcher 满足时, Action 会被执行
新版本包含以下 Action
其中 Filter 整合了原来的白名单和 waf 功能,可以实现更复杂的组合规则
后续还会在这个框架中,继续添加更多的 Action 。目前访问频率限制已经排在计划中了,大家需要什么 Action ,也欢迎提出来
至于能用来干什么,看大家发挥啦~
1
tSQghkfhTtQt9mtd 2016-02-18 23:59:00 +08:00 1
吼啊,资辞
为什么不把 C 重构的计划也说出来 |
2
Strikeactor 2016-02-19 00:00:12 +08:00 1
资瓷啊
这个项目, excited ! |
3
AlexaZhou OP |
4
kn007 2016-02-19 07:41:21 +08:00
赞。
|
5
kmahyyg 2016-02-19 09:36:04 +08:00 1
问下, ram 占用怎样?准备上了,小鸡可以不?
|
6
holyghost 2016-02-19 09:57:18 +08:00 1
资瓷!
|
7
AlexaZhou OP @kmahyyg
和 Nginx 官方版本相比,多了个 Lua 解释器,另外使用了 21M 的共享内存,并没有哪儿用到大内存 在我本地用作反向代理的情况下,大概占用不到 100M 要注意的是,如果连接数目大,或者使用了缓存 |
9
aitaii 2016-02-19 20:53:41 +08:00 via Android
找了一下午 搜 Nginx 没有搜出来 看见了
|
10
canglaoshi 2016-02-20 11:31:02 +08:00
能不能加一个防御 ddos , cc 的的功能,简单的说就是当一个攻击 ip 请求到达 100 个,就自动返回 403.
|
11
AlexaZhou OP |