使用django來獲取用戶訪問的IP地址,如果用戶是正常情況下
request.META['REMOTE_ADDR']
可以獲得用戶的IP地址。但是有些網站服務器會使用ngix等代理http,或者是該網站做了負載均衡,導致使用remote_addr抓取到的是127.0.0.1,這時使用HTTP_X_FORWARDED_FOR才獲得是用戶的真實IP。推薦使用以下代碼:
if request.META.has_key('HTTP_X_FORWARDED_FOR'): ip = request.META['HTTP_X_FORWARDED_FOR'] else: ip = request.META['REMOTE_ADDR']