1

我正在使用 Django,当我使用 geoip 包或导入 GeoIP 时,我在 centos 上收到以下错误,而它在 ubuntu 12.04 上运行良好。

错误如下

 from django.contrib.gis.utils.geoip import GeoIP
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.6/site-packages/django/contrib/gis/utils/geoip.py", line 67, in <module>
    'Try setting GEOIP_LIBRARY_PATH in your settings.' % lib_name)
django.contrib.gis.utils.geoip.GeoIPException: Could not find the GeoIP library (tried "GeoIP"). Try setting GEOIP_LIBRARY_PATH in your settings.

请尝试帮助我,没有这个我不能走得更远。

4

2 回答 2

1

尝试在您的两个系统上执行此操作:

$ echo $GEOIP_LIBRARY_PATH

并比较输出。从错误消息中,听起来您将在 Ubuntu 上获得一个目录路径,并确保在 CentOS 上设置相同的路径,如下所示(在 centOS 系统上):

$ export GEOIP_LIBRARY_PATH=$GEOIP_LIBRARY_PATH:<path returned from Ubuntu system>
于 2012-11-05T17:27:11.317 回答
0

django geoip 代码使用 MaxMind 免费的 geoip 数据,该数据以专有的基于文件的“数据库”的形式分发。您可能为此缺少 rpm 包,之后您可以找到它提供的共享库并将 GEOIP_LIBRARY_PATH 设置为指向它。看起来既有为 CentOS设置路径的示例,也有一些软件包。

于 2012-11-05T17:37:08.277 回答