Python使用django获取用户IP地址的方法

yipeiwu_com6年前Python基础

本文实例讲述了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程序设计有所帮助。

相关文章

Python模块的定义,模块的导入,__name__用法实例分析

Python模块的定义,模块的导入,__name__用法实例分析

本文实例讲述了Python模块的定义,模块的导入,__name__用法。分享给大家供大家参考,具体如下: 相关内容: 什么是模块 模块的导入 模块的导入...

python对文件目录的操作方法实例总结

本文实例讲述了python对文件目录的操作方法。分享给大家供大家参考,具体如下: python 可以很方便的对文件进行打开,读写操作,删除操作,也可以很方便的对文件夹进行遍历操作。总体说...

pytorch 在网络中添加可训练参数,修改预训练权重文件的方法

实践中,针对不同的任务需求,我们经常会在现成的网络结构上做一定的修改来实现特定的目的。 假如我们现在有一个简单的两层感知机网络: # -*- coding: utf-8 -*- im...

python中urllib模块用法实例详解

本文实例讲述了python中urllib模块用法。分享给大家供大家参考。具体分析如下: 一、问题: 近期公司项目的需求是根据客户提供的api,我们定时去获取数据, 之前的方案是用php收...

numpy ndarray 按条件筛选数组,关联筛选的例子

最近的项目中大量涉及数据的预处理工作,对于ndarray的使用非常频繁。其中ndarray如何进行数值筛选,总结了几种方法。 1.按某些固定值筛选 如下面这段代码从,ndarray中可...