python使用django获取用户ip地址的方法

本文实例讲述了python使用django获取用户ip地址的方法。分享给大家供大家参考。具体如下:

函数实现:

def get_client_ip(request):
try:
real_ip = request.meta[‘http_x_forwarded_for’]
regip = real_ip.split(“,”)[0]
except:
try:
regip = request.meta[‘remote_addr’]
except:
regip = “”
return regip

问题是会在有的地方不好使,检测发现request.meta根本无key值等于http_x_forwarded_for和remote_addr。服务器采用nginx+fastcgi实现。

解决办法:

在nginx的fastcgi配置中加入如下:

fastcgi_param remote_addr $remote_addr;

希望本文所述对大家的python程序设计有所帮助。

Posted in 未分类