Django 获取用户IP

ops/2024/10/22 16:06:55/

获取代理函数

python">def get_ip(request):# 判断是否使用代理x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR')if x_forwarded_for:# 使用代理获取真实的ipip = x_forwarded_for.split(',')[0]else:# 未使用代理获取IPip = request.META.get('REMOTE_ADDR')return HttpResponse('{"origin": "%s"}' % ip)

生产环境配置NGINX

# nginx配置
location / {proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

在使用NGINX做负载均衡的生产环境中如果不配置NGINX,那么 request.META.get('REMOTE_ADDR') 获取到的是NGINX负载均衡proxy_pass 127.0.0.1 IP,而不是实际用户IP


http://www.ppmy.cn/ops/127609.html

相关文章

Java高级Day54-正则表达式底层实现

140.正则表达式 正则表达式底层实现 介绍:一个正则表达式,就是用某种模式去匹配字符串的一个公式 public class TestJava {public static void main(String[] args) {String content "11943wd2342drwf4235"; ​//目标:匹配所有…

Element-plus中的表单验证

一、属性绑定 在 Element-plus 的 Form 组件中&#xff0c;需要对用户的输入进行规范验证时&#xff0c;可使用 rules 属性对验证规则做绑定。并在 el-form-item标签上设置 prop 属性的键值。 <template><div><el-form :model"ruleForm"style"…

文本数据可视化

文字是传递信息最常用的载体。在当前这个信息爆炸的时代,人们接收信息的速度已经小于信息产生的速度,尤其是文本信息。当大段大段的文字摆在面前,已经很少有耐心去认真把它读完,经常是先找文中的图片来看。这一方面说明人们对图形的接受程度比枯燥的文字要高很多,另一方面…

物联网之温湿度传感器模块、arduino、esp32

MENU 原理硬件电路设计软件程序设计 原理 无论是工业领域还是日常生活&#xff0c;温度和湿度一直都是两个比较重要的指标&#xff0c;DHT11和DHT22是DHTxx系列中使用最广泛的两种传感器。它们有着相同的引脚&#xff0c;用法一致。 如果拆下传感器的外壳&#xff0c;其实里面…

秩序的构建:探寻排序算法的奥秘,开启数据世界的诗篇

目录 一、排序算法的基本概念 二、常见排序算法的运行方式和 C 语言实现 1. 冒泡排序 2. 选择排序 3. 插入排序 4. 归并排序 5. 快速排序 三、排序算法的深度分析 1. 时间复杂度 2. 空间复杂度 3. 稳定性 四、总结 五、其他 一、排序算法的基本概念 排序算法是指…

数字孪生城市:智慧城市的未来蓝图

在当今数字化时代&#xff0c;智能技术的广泛应用正在改变人们的生活和工作方式。数字孪生城市作为未来新型智慧城市演进的重要方向&#xff0c;数字孪生城市是一种将城市物理世界的各个方面转化为数字形式的技术&#xff0c;通过网络空间与物理世界之间的实时数据交换和仿真分…

界壁0.1

为了实现全面而强大的安全系统,我们进一步完善代码,确保每个功能模块都尽可能地健壮和高效。以下是一个更完善的版本,涵盖了所提到的功能: 功能概述 请求 root 权限:确保脚本以 root 权限运行。 配置防火墙规则:自动获取所需权限,配置 iptables 规则以记录和拦截流量。…

sqoop搭建教程

1.上传并解压 tar -zxvf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz2.修改配置文件 cd sqoop-1.4.6/conf/mv sqoop-env-template.sh sqoop-env.shvim sqoop-env.sh3.配置环境变量 vim /etc/profilesource /etc/profile4.添加jar包 cd /usr/local/soft/sqoop-1.4.6/lib