0
내보기에 다음 코드 조각을 사용하여 사용자를 지리적 위치 설정 해요 : 내 dev에 서버 (manage.py runserver
)에서프로덕션 서버에서 위치가 반입되지 않는 이유는 무엇입니까?
try:
jsonResponse = urllib2.urlopen("http://www.geoplugin.net/json.gp?ip="+request.META['REMOTE_ADDR']).read()
response = simplejson.loads(jsonResponse)
kwargs['loc'] = response['geoplugin_countryCode']
except:
kwargs['loc'] = 'error'
return basic_html(request,'index.html',kwargs)
이 잘 작동합니다. 내 gunicorn
프로덕션 서버에서 loc
은 공백입니다 (error
도 아님). 무슨 일이야?
'REMOTE_ADDR'에 대한 가치가 있음을 확인 했습니까? 빈칸으로 채워지지 않는 경우가 종종 있으므로 빈 IP를 보내고 지오 프랭 서비스가 응답으로 빈 국가 코드를 반환하는 것일 수 있습니다. –
@ Dan 예, nginx가 실제 IP를 전달했지만 다른 헤더에 있습니다. 지금 그것을 분류했다. 답변을 게시하면 받아 들일 수 있습니다! – fredley