使用django来获取用户访问的IP地址,若是用户是正常状况下经过request.META['REMOTE_ADDR'] 能够得到用户的IP地址。可是有些网站服务器会使用ngix等代理http,或者是该网站作了负载均衡,致使使用remote_addr抓取到的是1270.0.1,这时使用HTTP_X_FORWARDED_FOR才得到是用户的真实IP。django
推荐使用如下代码服务器
if request.META.has_key('HTTP_X_FORWARDED_FOR'): ip = request.META['HTTP_X_FORWARDED_FOR'] else: ip = request.META['REMOTE_ADDR']