이것은 수정되지 않은 것으로 보입니다. 5 년 전에 확정 된 이전 버그 here을 읽었습니다. 기본적으로 나는 Django과 MaxMind에있는 문서에 따라 모든 것을 완벽하게 수행했습니다.GeoIP + Django, 잘못된 GeoIP 도시 데이터 파일
내 GEOIP_PATH
를 지정, 심지어 너무 GEOIP_CITY
을 사용하여 파일을 지정 시도했지만 나는 여전히 같은 역 추적 얻을 :
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 112, in get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/home/django/backend/apps/api/routes.py", line 98, in jsonp_wrapper
resp = f(request, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/django/views/decorators/csrf.py", line 57, in wrapped_view
return view_func(*args, **kwargs)
File "/home/django/backend/apps/api/routes.py", line 205, in userLogin
userProfile.updateLocation(request)
File "/home/django/backend/apps/agents/models.py", line 89, in updateLocation
location = locationFromRequest(request)
File "/home/django/backend/apps/agents/models.py", line 29, in locationFromRequest
return g.city(ip)
File "/usr/lib/python2.7/dist-packages/django/contrib/gis/geoip/base.py", line 159, in city
enc_query = self._check_query(query, city=True)
File "/usr/lib/python2.7/dist-packages/django/contrib/gis/geoip/base.py", line 148, in _check_query
raise GeoIPException('Invalid GeoIP city data file: %s' % self._city_file)
GeoIPException: Invalid GeoIP city data file
난 그냥 사용하여 테스트 할 수있는 파이썬 쉘에서 간단한 테스트를하고 있어요을 :
from django.contrib.gis.geoip import GeoIP
g = GeoIP()
g.city('google.com')
g.country('google.com')
< ---이 잘 작동, 내가
apt-get install libgeoip-dev
을 사용하여 apt에서 GeoIP C 라이브러리를 설치했는데, 가장 최신 버전이 1.6.2-1
일 때 이전 버전 1.6.0-1
이 나에게 제공되었습니다. 내 Django 버전은 1.6.1입니다.