› NGINX
› NGINX Trac
› 3rd Party Modules
› Security Advisories
› CHANGES
› OpenResty
› ngx_lua
› Tengine
在线学习资源
› NGINX 开发从入门到精通
NGINX Modules
› ngx_echo
liyunlong5
V2EX  ›  NGINX

nginx 如何单独限制动态请求

  •  
  •   liyunlong5 · Jul 17, 2022 via Android · 3141 views
    This topic created in 1569 days ago, the information mentioned may be changed or developed.

    RT ,由于 nginx 不支持 if 嵌套,比方说我想单独限制 uri 中含有?的动态请求,应该怎么实现呢,请大神赐教

    个人思路,用 location+正则表达式,由于不会正则,于是表达不了。。。

    7 replies  •  2022-08-01 14:17:42 +08:00
    zoharSoul
    zoharSoul
    Jul 17, 2022
    1
    ? 和动态请求有必然联系吗?
    eason1874
    eason1874
    Jul 17, 2022
    2
    按实际业务路径去限流,别按 ? 查询符号,很多软件分享链接会加查询参数,每次都不一样
    Xusually
    Xusually
    Jul 17, 2022 via iPhone
    3
    NginxLua
    或者干脆用 OpenResty
    自定义轻量级的 WAF 很容易
    1point
    1point
    Jul 18, 2022
    4
    直接判断$args 不行吗
    1point
    1point
    Jul 18, 2022
    5
    @1point 或者$is_args 这样判断
    liyunlong5
    liyunlong5
    OP
    Aug 1, 2022
    6
    @1point nginx 不支持 if 潜逃嵌套。。

    location {
    if $is_args
    limit.....

    这种语法行不通
    1point
    1point
    Aug 1, 2022
    7
    如果这个判断就可,嵌套就没有问题。一般是通过变量值设置来实现的。参考这个
    https://www.jianshu.com/p/d9ef4b62c6fe
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4932 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 03:47 · PVG 11:47 · LAX 19:47 · JFK 22:47
    ♥ Do have faith in what you're doing.