Configuration

启用 Cloudflare 头部信息

如果您为网站使用了 Cloudflare,Umami 将使用 Cloudflare 发送的头部信息来确定访问者的位置信息。然而,Cloudflare 默认只发送国家数据。如果您还想获取地区和城市信息,则需要配置 Cloudflare 发送额外的头部信息。

步骤

  1. 登录 Cloudflare 控制面板,选择您的账户和网站。

  2. 进入 Rules(规则)> Settings(设置)。

  3. 进入 Managed Transforms(托管转换)标签页。

  4. 启用 Add visitor location headers(添加访客位置信息头部) 设置。

之后,您需要将以下头部代理到 Umami:

  • CF-IPCountry
  • CF-RegionCode
  • CF-IPCity

例如,如果您使用 Nginx 作为反向代理,可以添加如下配置:

location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header CF-Connecting-IP $remote_addr;
    proxy_set_header CF-IPCountry $http_cf_ipcountry;
    proxy_set_header CF-RegionCode $http_cf_regioncode;
    proxy_set_header CF-IPCity $http_cf_ipcity;
    proxy_pass http://127.0.0.1:3000;
}

强制使用本地地理数据库

另外,当 Cloudflare 仅发送国家信息且无法添加访客位置信息头部时,您可以将运行时变量 SKIP_LOCATION_HEADERS 设置为 1。这将禁用头部检测,强制使用内部地理数据库。