Drupal 中所有请求的 CF_IPCountry 标头

Posted

技术标签:

【中文标题】Drupal 中所有请求的 CF_IPCountry 标头【英文标题】:CF_IPCountry header to all requests in Drupal 【发布时间】:2014-10-25 00:49:46 【问题描述】:

我正在 Drupal 中创建博客并使用 Cloudflare DNS。他们充当“代理”,我的所有访客都有自己的 IP。他们提供 IP 地理位置选项来显示真实用户的 IP:

启用后,我们将向我们向您的网站发出的所有请求添加一个名为“CF-IPCountry”的标头。以下是几个如何访问/存储此值的示例:

$country_code = $_SERVER["HTTP_CF_IPCOUNTRY"]; // 在 php 中访问

$country_code = $ENV"HTTP_CF_IPCOUNTRY"; # 在 Perl 中访问

问题是:我该如何使用它?

我是一个 html/css/js 人,现在我迈出了进入 php 的第一步。我最近两天搜索了这个,没有找到一个如何实现这个选项的例子。我在“template.php”文件中试过这个:

function TEMPLATE_drupal_add_http_header() 
  $country_code = $_SERVER["HTTP_CF_IPCOUNTRY"];

但是什么也没发生,ip 仍然来自 Cloudflare。有人可以在这里帮忙吗?是不是简单到不需要解释(所以没找到)?

谢谢。

【问题讨论】:

【参考方案1】:

你有类似Drupal plugin installed 或类似mod_cloudflare 的东西吗?

【讨论】:

以上是关于Drupal 中所有请求的 CF_IPCountry 标头的主要内容,如果未能解决你的问题,请参考以下文章

Drupal 中的 Ajax 请求给出 403

如何使 Drupal Commerce 配置实体可修改

Drupal 6、CCK 和视图中的循环排序

Drupal - 搜索视图不触发Solr请求

Drupal 8 - 如何在视图中显示当前登录用户未创建的所有内容

使用fetchAPI和Drupal作为解耦后端的无效X-CSRF-Token请求标头