ここのサイトは CloudFlare を通しているのだが、そうするとアクセス解析的なことをする際に [cci]$_SERVER[“REMOTE_ADDR”][/cci] の値が CloudFlare 内のサーバの IP アドレスになってしまい、本来のビジターのそれを得られない。
そういう場合は代わりに [cci]$_SERVER[“HTTP_CF_CONNECTING_IP”][/cci] を参照する。自前で作っている PHP アプリケーションの場合はそれだけの話なのだが、このブログの場合はどうだろうか。このブログは WordPress で運用している。
must-use plugin というものを使う。これは WordPress のメインの処理に先駆けた早い段階で読み込まれる。[cci]
if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) {
$_SERVER["REMOTE_ADDR"] = $_SERVER["HTTP_CF_CONNECTING_IP"];
}
てな感じのコードを書いておく。