PHP

 

지난번에 포스팅 했던 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 모듈 이용하기|작성자 아람조

 

 

 

 

about author

PHRASE

Level 60  라이트

시의(時宜)라는 것은 때에 따라 변통하여 법을 만듦으로써 백성을 구하는 것이다. -이이

댓글 ( 4)

댓글 남기기

작성

PHP 목록    more