gentoo geoip安装

我尝试通过SSH在gentoo服务器上安装geoip扩展。 我做了:

涌现Geo-IP

: 好

pecl安装geoip

: 好

geoiplookup www.bbc.co.uk

:给我GeoIP国家版:GB,英国GeoIP城市版,第1版:GB,N7,Tadworth,(null),51.283298,-0.233300,0.0,GeoIP城市版,第0版:GB,N7,Tadworth,( null),51.283298,-0.233300

似乎很好! 现在我尝试添加这个作为PHP扩展:我补充说

延长=的/ usr /本地/ PHP5 / LIB / PHP /扩展/ geoip.so

到php.ini

并重新与Apache

/etc/init.d/apache重启

但我的phpinfo()不包含任何geoip库和

给我错误:调用未定义的函数geoip_record_by_name()

有人可以帮我在gentoo上安装geoip吗?

谢谢

你有没有检查文件:/usr/local/php5/lib/php/extensions/geoip.so是否存在? 如果没有,使用find命令来查找它:

find /usr -name "geoip.so" -print 

并在扩展=之后放置正确的路径

如果没有找到它,除非你想通过pecl安装它,你可能想要为此安装gentoo软件包:

 emerge -v dev-php5/pecl-geoip 

如果没有谷歌,我们会做什么? 我在这里找到了一些说明: http : //www.pc-freak.net/blog/how-to-install-and-setup-and-test-geoip-support-in-php-on-apache2-in-debian- lenny-linux /和这里: http : //no2.php.net/manual/en/install.pecl.php

 # emerge dev-php/pecl-geoip * Last emerge --sync was 43d 4h 12m 46s ago. >>> Verifying ebuild manifests >>> Starting parallel fetch >>> Emerging (1 of 2) dev-libs/geoip-1.4.8 >>> Installing (1 of 2) dev-libs/geoip-1.4.8 >>> Emerging (2 of 2) dev-php/pecl-geoip-1.0.7-r1 >>> Installing (2 of 2) dev-php/pecl-geoip-1.0.7-r1 >>> Recording dev-php/pecl-geoip in "world" favorites file... # /etc/init.d/apache2 restart * apache2 not running (no pid file) * Starting apache2 ... [ ok ] # cd /usr/share/GeoIP # wget http://www.pc-freak.net/bshscr/geoip_update.sh --2012-02-23 15:09:01-- http://www.pc-freak.net/bshscr/geoip_update.sh Resolving www.pc-freak.net... 83.228.93.76 Connecting to www.pc-freak.net|83.228.93.76|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 270 [application/x-sh] Saving to: `geoip_update.sh' 100%[=============================>] 270 --.-K/s in 0s 2012-02-23 15:09:01 (54.4 MB/s) - `geoip_update.sh' saved [270/270] # bash geoip_update.sh --2012-02-23 15:10:07-- http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz Resolving geolite.maxmind.com... 174.36.207.186 Connecting to geolite.maxmind.com|174.36.207.186|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 17572430 (17M) [text/plain] Saving to: `GeoLiteCity.dat.gz' 100%[=============================================>] 17,572,430 2.63M/s in 9.0s 2012-02-23 15:10:16 (1.86 MB/s) - `GeoLiteCity.dat.gz' saved [17572430/17572430] # ln -s GeoLiteCity.dat GeoIPCity.dat # cd /var/www/raptor.lan/htdocs/ # <-- MY WEB ROOT # mkdir -p tmp/geoip # cd tmp/geoip/ # cat hmz.php <?php echo "<pre>"; print_r(geoip_record_by_name('php.net')); ?> # curl http://localhost/tmp/geoip/hmz.php <pre>Array ( [continent_code] => NA [country_code] => US [country_code3] => USA [country_name] => United States [region] => CA [city] => Sunnyvale [postal_code] => 94089 [latitude] => 37.424900054932 [longitude] => -122.0074005127 [dma_code] => 807 [area_code] => 408 ) 

任务完成?

顺便说一句。 你的配置可能是错误的。

 # equery f dev-php/pecl-geoip | grep ini /etc/php/apache2-php5.3/ext-active/geoip.ini /etc/php/apache2-php5.3/ext/geoip.ini /etc/php/cli-php5.3/ext-active/geoip.ini /etc/php/cli-php5.3/ext/geoip.ini raptor: ~ # cat /etc/php/apache2-php5.3/ext-active/geoip.ini extension=geoip.so