ngx_http_geoip_module

    当使用支持 IPv6 的数据库时(1.3.12、1.2.7),IPv4 地址将被视为 IPv4 映射的 IPv6 地址。

    此模块不是默认构建的,可以使用 --with-http_geoip_module 配置参数启用。

    指定一个用于根据客户端 IP 地址确定国家的数据库。使用此数据库时,以下变量可用:

    • $geoip_country_code

      双字母国家代码,例如 RUUS

    • $geoip_country_code3

      三个字母的国家代码,例如 RUSUSA

    • $geoip_country_name

      国家名称,例如 Russian FederationUnited States

    指定一个用于根据客户端 IP 地址确定国家、地区和城市的数据库。使用此数据库时,以下变量可用:

    • $geoip_area_code

      由于相应的数据库字段已弃用,因此此变量可能包含过时的信息

    • $geoip_city_country_code

      双字母国家代码,例如 RUUS

    • $geoip_city_country_code3

      三个字母的国家代码,例如 RUSUSA

    • $geoip_city_country_name

      国家名称,例如 Russian FederationUnited States

    • $geoip_dma_code

      美国的 DMA 地区代码(也称为城市代码),根据 Google AdWords API 中的

    • $geoip_latitude

      纬度

    • $geoip_longitude

    • $geoip_region

      双符号国家地区代码(地区、领土、州、省、联邦土地等),例如 48DC

    • 国家地区名称(地区,领土,州,省,联邦土地等),例如 Moscow CityDistrict of Columbia

    • $geoip_city

      城市名称,例如 MoscowWashington

    指定用于根据客户端 IP 地址确定组织的数据库。使用此数据库时,以下变量可用:

    • $geoip_org

      组织名称,例如 The University of Melbourne

    定义可信地址。当请求来自可信地址时,将使用来自 X-Forwarded-For 请求头字段的地址。

    如果递归搜索被禁用,那么将使用在 X-Forwarded-For 中发送的最后一个地址,而不是匹配其中一个可信地址的原始客户端地址。如果启用递归搜索,则将使用在 中发送的最后一个不可信地址,而不是匹配其中一个可信地址的原始客户端地址。

    http://nginx.org/en/docs/http/ngx_http_geoip_module.html