지난번에 포스팅 했던 GeoIP를 활용해 보자.
PHP-GeoIP확장 모듈을 설치하게 되면 php를 통하여 접속자 또는 지정한 아이피, 도메인에 대한 위치 정보를 파악할 수 있다.
1. 모듈의 최신 버전 체크
우선 http://pecl.php.net/package/geoip 을 통해 최신 버전을 확인한다.
2. 모듈의 설치
[root@~]# cd /usr/local/src
[root@~]# wget http://pecl.php.net/get/geoip-1.0.8.tgz
[root@~]# tar xzvf geoip-1.0.8..tgz
[root@~]# cd ./geoip-1.0.8
[root@~]# /usr/bin/phpize (서버 환경에 따라 위치가 다를 수 있다. find /usr -name phpize로 찾아볼 수 있다.)
[root@~]# ./configure --with-php-config=/usr/bin/php-config --with-geoip=/usr/local
(서버 환경에 위치가 따라 다를 수 있다. find /usr -name php-config로 찾아볼 수 있다.)
[root@~]# make; make install
Installing shared extensions:/usr/lib/php/extensions/
3. php.ini에 인식
php.ini파일에 아래와 같은 구문을 추가한다.
[root@~]# vi /etc/php.d/php.ini (php.ini의 위치는 서버마다 다를 수 있다.)
....
extension_dir
위치를 확인한다.
php-config --extension-dir
Installing shared extensions:/usr/lib64/php/modules
[GeoiP] extension_dir=/usr/lib/php/extensions/ extension=geoip.so geoip.custom_directory=/usr/share/GeoIP....
[root@~]# service httpd restart
4. 사용
<?
print_r(geoip_record_by_name("www.naver.com"));
?>
--------------------
Array (
[continent_code] => AS
[country_code] => KR
[country_code3] => KOR
[country_name] => Korea, Republic of
[region] => 11
[city] => Seoul
[postal_code] =>
[latitude] => 37.5984992981
[longitude] => 126.978302002
[dma_code] => 0
[area_code] => 0
)
[출처] GeoIP 모듈 이용하기|작성자 아람조
댓글 ( 4)
댓글 남기기