首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NGINX
NGINX Trac
3rd Party Modules
Security Advisories
CHANGES
OpenResty
ngx_lua
Tengine
在线学习资源
NGINX 开发从入门到精通
NGINX Modules
ngx_echo
V2EX  ›  NGINX

nginx 如何多站点配置屏蔽 geo?

  •  
  •   178620086 · 54 天前 · 1505 次点击
    这是一个创建于 54 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我知道可以在 server 节点下面配置

    if ($geoip_country_code = JP) { return 403; }

    请问能在 http 下配置吗?或者有其他方式可以实现,多个 server 都实现这个拦截

    6 回复  |  直到 2019-10-16 19:33:13 +08:00
        1
    lihongjie0209   54 天前
    include 不行吗???
        2
    178620086   54 天前
    虽然也可以,但是我每次新增一个 server 就要配置一下,怪麻烦的
        3
    yutian2211   54 天前
    Syntax: if (condition) { ... }
    Default: —
    Context: server, location

    不可以放到 http 下
        4
    flyingghost   54 天前
    前置一个 nginx 反代专做过滤。
        5
    Nick66   54 天前
    if 不能写在 http 区块
        6
    eason1874   54 天前
    用 lua-nginx-module 可以直接在 http 段写访问控制。

    access_by_lua_block {
    if ngx.var.geoip_country_code == 'JP' then
    ngx.exit(403)
    end
    }

    大概是这样,这个模块非常好用。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   990 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 25ms · UTC 19:20 · PVG 03:20 · LAX 11:20 · JFK 14:20
    ♥ Do have faith in what you're doing.