• 清风笑
    2019-01-02
    老师您好,请问如何根据url参数中的key做限流呢?
    例如,对于url http://api.abc.com?key=1234-sdwe-1222-ddw2
    根据参数key限制QPS。
    如果是集群的情况应该怎么做呢?

    谢谢。
    展开

    作者回复: 需要结合两节课一起看:
    1、第56节课中,limit_req_zone key中可以把key定义为参数的值。
    2、第73课介绍的arg_key变量,可以取出url参数值,http_key变量,可以取出request中header的值。
    3、如果是集群,需要编程开发,开源版nginx不支持。可以用openresty,并做lua语言的开发,成本较小。

    
     1
  • arvin
    2018-12-13
    感觉最近这些好少用的。不知道使用场景(见识少-.-!)

    作者回复: 如果用了多个http模块做access访问控制的话,并且需要做“与”以及“或”这种逻辑操作时,才用得上的:-)

    
     1
  • fusion
    2020-01-08
    deny all不是在access模块吗?和safisify any同时存在时,优先级低于satisify ?

    作者回复: 对,satisfy是框架指令,一定会执行,deny是access模块的指令,被框架所控制

    
    
  • 戴斌
    2018-12-28
    authrequest 是子请求的方式,我的理解是不能满足cas认证的方式,是不是只能通过第三方模块来做了

    作者回复: 因为生产环境中认证这个流程很复杂,对密码学、数据库、业务特点要求多,特别是当今认证还涉及到各种生物识别技术,让nginx来做是不合适的,所以authrequest的应用场景就是利用了nginx的高效,以及通常是由专业的动态应用服务器做认证的。

    
    
  • Panda
    2018-12-28
    相当于 或 且 的权限验证

    作者回复: 对

    
    
我们在线,来聊聊吧