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

    location {
    if $is_args
    limit.....

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