GeoIPのインストール
IPアドレスから国や都市を取得するためのライブラリが、MaxMind社のGeoIP。
辞書データが無料のものもあるので、それを利用する。
1.GeoIPライブラリをインストール
MaxMind社のホームページ(http://www.maxmind.com/)から、GeoIPライブラリをダウンロードし、インストールします。
cd /usr/local/src wget http://www.maxmind.com/download/geoip/api/c/GeoIP.tar.gz tar xzvf GeoIP.tar.gz cd GeoIP-1.4.8 ./configure make make install
2.GeoIPで使うデータを入手
無料で利用できる国データ、町データをダウンロード、解凍し、配置します。(有料版もあります。)
# 無料版のLiteシリーズのファイルをダウンロードして解凍する。 cd /usr/local/src/ wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz gunzip /usr/local/src/GeoIP.dat.gz gunzip /usr/local/src/GeoLiteCity.dat.gz # ダウンロードしたファイルを/usr/local/share/GeoIP/に格納。 # ファイル名を変更していることに注意。 rm -rf /usr/local/share/GeoIP/GeoIP.dat rm -rf /usr/local/share/GeoIP/GeoIPCity.dat rm -rf /usr/local/share/GeoIP/GeoLiteCity.dat cp GeoIP.dat /usr/local/share/GeoIP/ cp GeoLiteCity.dat /usr/local/share/GeoIP/ mv /usr/local/share/GeoIP/GeoLiteCity.dat /usr/local/share/GeoIP/GeoIPCity.dat
3.Peclモジュールのインストール、設定
pecl install geoip
無事インストールできたら、
vim /etc/php.ini
php.iniで、geoip.soを読み込むように設定。
; geoip extension=geoip.so
設定を反映させるために再起動。
/etc/rc.d/init.d/httpd restart
geoipのライブラリのインタフェースはどういったものがあるかは【マニュアル】を参照。
4.最後に、PHPで動作検証。
<?php //ホワイトハウス var_dump(geoip_record_by_name('whitehouse.gov')); //東京タワー var_dump(geoip_record_by_name('www.tokyotower.co.jp')); //訪問者がどこから来たか var_dump(geoip_record_by_name($_SERVER['REMOTE_ADDR'])); ?>
関連記事
-
-
ext2でのサブディレクトリの配置上限数
やってきたメールをローカルに、サブディレクトリを作成して保存していたら、どう考え …
-
-
qmailの設定ファイル
qmailをつい最近インストールしたのだけど、 下記の5つの設定ファイルが、最低 …
-
-
.htaccessで、IPによるアクセス制限をかけたら、「Apache 2 Test Page」が表示される。
IPによるアクセス制限をかけたら、 「Apache 2 Test Page po …
-
-
$_SERVER[“REQUEST_TIME_FLOAT”]
$_SERVER[“REQUEST_TIME”]には置き …
-
-
メモリ搭載量などを調べる
メモリ搭載量などを調べる 下記は出力例。#以降は、項目説明。 また、メモリに関し …
-
-
[Linux]複数ファイルの文字コードを一括で調べる – nkf
開発をしていると、たまに文字コードが異なる状態で保存されたりする。 UTF-8の …
-
-
[Smarty]確認画面などで使う、Hidden項目を全力で自動生成
入力確認画面や完了通知画面で、前画面(入力画面)のリクエストを元に一気にHidd …
-
-
開いているポートを調べる(nmap)
開いているポートを調べる(nmap) 外部公開しているポートを調べる方法はいくつ …
-
-
Smarty2からSmarty3へのアップグレードガイド
Smarty2を以前から愛用していたのだけど、Smarty3にそろそろ移行しよう …
-
-
headers_list
リダイレクトやNot Found処理をする時に、header()を使用しHTTP …
Comment
[…] GeoIPã®ã¤ã³ã¹ãã¼ã« | Read it later. http://readit.l8r.in/2013-02-22/geoip%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB/ […]
[…] GeoIPのインストール | Read it later. http://readit.l8r.in/2013-02-22/geoip%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB/ […]
[…] GeoIPのインストール | Read it later. http://readit.l8r.in/2013-02-22/geoip%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB/ […]