爱意满满的作品展示区。
AlexaZhou

VeryNginx 新功能预告

  •  
  •   AlexaZhou ·
    alexazhou · Feb 18, 2016 · 4919 views
    This topic created in 3913 days ago, the information mentioned may be changed or developed.

    介绍

    为 VeryNginx 开发了新的自定义动作模型,目前已经完成了前端的规则编辑器部分,剩下 Lua 部分还没完成,快的话差不多周日晚上可以和大家见面

    现状

    当前版本的 VeryNginx 可以配置一些自定义动作,例如

    • 根据 URI 进行重定向
    • 根据参数对请求进行过滤
    • 根据 URI 对请求进行过滤
    • 根据 IP 对请求进行过滤
    • 根据 UserAgent 对参数进行过滤

    这样进行配置有一些限制,例如并不能根据多个条件并列进行过滤,不能根据域名进行重定向等等...

    改进

    这次设计了新的自定义动作模型,由 Matcher 和 Action 组成。 Matcher 用来对请求进行匹配, Action 为要执行的动作。新结构的优势在于把所有的前置判断整合在一起来实现了,使复杂(组合)规则的实现变成了可能

    Matcher

    一个 Matcher 用来判断一个 Http 请求是否符合指定的条件, 一个 Matcher 可以包含一个或者多个约束条件,目前支持以下几种约束:

    • 源 IP
    • Domain
    • UserAgent
    • URI

    当一个请求满足了 Matcher 中包含的全部条件时,即命中了这个 Matcher

    Action

    每个 Action 会引用一个 Matcher ,当 Matcher 满足时, Action 会被执行

    新版本包含以下 Action

    • Scheme Lock 将访问协议锁定为 Https 或者 Http
    • Redirect 对请求进行重定向
    • URI Rewrite 对请求的 URI 进行内部重写
    • Filter 过滤器

    其中 Filter 整合了原来的白名单和 waf 功能,可以实现更复杂的组合规则

    结束

    后续还会在这个框架中,继续添加更多的 Action 。目前访问频率限制已经排在计划中了,大家需要什么 Action ,也欢迎提出来

    至于能用来干什么,看大家发挥啦~

    Supplement 1  ·  Feb 19, 2016
    Supplement 2  ·  Feb 22, 2016
    已经发布 V0.2-beta1 版本,新功能全部实现...
    欢迎测试😈
    11 replies  •  2016-02-20 16:20:18 +08:00
    tSQghkfhTtQt9mtd
    tSQghkfhTtQt9mtd
    Feb 18, 2016❤️1
    1
    吼啊,资辞
    为什么不把 C 重构的计划也说出来
    Strikeactor
    Strikeactor
    Feb 19, 2016❤️1
    2
    资瓷啊
    这个项目, excited !
    AlexaZhou
    AlexaZhou
    OP
    Feb 19, 2016
    3
    @liwanglin12

    让我们一步步向前走,先把基本功能做好了...
    kn007
    kn007
    Feb 19, 2016
    4
    赞。
    kmahyyg
    kmahyyg
    Feb 19, 2016❤️1
    5
    问下, ram 占用怎样?准备上了,小鸡可以不?
    holyghost
    holyghost
    Feb 19, 2016❤️1
    6
    资瓷!
    AlexaZhou
    AlexaZhou
    OP
    Feb 19, 2016
    7
    @kmahyyg

    和 Nginx 官方版本相比,多了个 Lua 解释器,另外使用了 21M 的共享内存,并没有哪儿用到大内存

    在我本地用作反向代理的情况下,大概占用不到 100M

    要注意的是,如果连接数目大,或者使用了缓存
    AlexaZhou
    AlexaZhou
    OP
    Feb 19, 2016
    8
    @kmahyyg

    接上一条

    要注意的是,如果连接数目大,或者使用了缓存的情况下, Nginx 也会使用更多的内存
    aitaii
    aitaii
    Feb 19, 2016 via Android
    9
    找了一下午 搜 Nginx 没有搜出来 看见了
    canglaoshi
    canglaoshi
    Feb 20, 2016
    10
    能不能加一个防御 ddos , cc 的的功能,简单的说就是当一个攻击 ip 请求到达 100 个,就自动返回 403.
    AlexaZhou
    AlexaZhou
    OP
    Feb 20, 2016
    11
    @canglaoshi

    可以的,已经在排着啦
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2004 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 129ms · UTC 16:27 · PVG 00:27 · LAX 08:27 · JFK 11:27
    ♥ Do have faith in what you're doing.