页面“Nginx反向代理获取用户真实ip”与“Pc配置”之间的差异

来自linux中国网wiki
(页面间的差异)
跳到导航 跳到搜索
docker>Evan
(创建页面,内容为“==nginx中的几个变量== <pre> remote_addr 代表客户端的IP,但它的值不是由客户端提供的,而是服务端根据客户端的ip指定的,当你...”)
 
docker>Evan
(创建页面,内容为“CPU:https://item.jd.com/3701943.html 主板:https://item.jd.com/4257400.html 内存:https://item.jd.com/2121097.html 硬盘:https://item.jd.com/3843702...”)
 
第1行: 第1行:
==nginx中的几个变量==
+
CPU:https://item.jd.com/3701943.html
<pre>
 
remote_addr
 
代表客户端的IP,但它的值不是由客户端提供的,而是服务端根据客户端的ip指定的,当你的浏览器访问某个网站时,假设中间没有任何代理,那么网站的web服务器(Nginx,Apache等)就会把remote_addr设为你的机器IP,如果你用了某个代理,那么你的浏览器会先访问这个代理,然后再由这个代理转发到网站,这样web服务器就会把remote_addr设为这台代理机器的IP,除非代理将你的IP附在请求header中一起转交给web服务器。
 
  
X-Forwarded-For(简称XFF)
+
主板:https://item.jd.com/4257400.html
X-Forwarded-For 是一个 HTTP 扩展头部。HTTP/1.1(RFC 2616)协议并没有对它的定义,它最开始是由 Squid 这个缓存代理软件引入,用来表示 HTTP 请求端真实 IP。如今它已经成为事实上的标准,被各大 HTTP 代理、负载均衡等转发服务广泛使用,并被写入 RFC 7239(Forwarded HTTP Extension)标准之中。
 
  
XFF的格式为:
+
内存:https://item.jd.com/2121097.html
  
X-Forwarded-For: client, proxy1, proxy2
+
硬盘:https://item.jd.com/3843702.html
XFF 的内容由「英文逗号 + 空格」隔开的多个部分组成,最开始的是离服务端最远的设备 IP,然后是每一级代理设备的 IP。(注意:如果未经严格处理,可以被伪造)
 
如果一个 HTTP 请求到达服务器之前,经过了三个代理 Proxy1、Proxy2、Proxy3,IP 分别为 IP1、IP2、IP3,用户真实 IP 为 IP0,那么按照 XFF 标准,服务端最终会收到以下信息:
 
X-Forwarded-For: IP0, IP1, IP2
 
Proxy3 直连服务器,它会给 XFF 追加 IP2,表示它是在帮 Proxy2 转发请求。列表中并没有 IP3,IP3 可以在服务端通过 Remote Address 字段获得。我们知道 HTTP 连接基于 TCP 连接,HTTP 协议中没有 IP 的概念,Remote Address 来自 TCP 连接,表示与服务端建立 TCP 连接的设备 IP,在这个例子里就是 IP3。Remote Address 无法伪造,因为建立 TCP 连接需要三次握手,如果伪造了源 IP,无法建立 TCP 连接,更不会有后面的 HTTP 请求。但是在正常情况下,web服务器获取Remote Address只会获取到上一级的IP,本例里则是proxy3 的 IP3,这里先埋个伏笔。
 
  
X-Real-IP
+
电源:https://item.jd.com/876229.html
这又是一个自定义头部字段,通常被 HTTP 代理用来表示与它产生 TCP 连接的设备 IP,这个设备可能是其他代理,也可能是真正的请求端,这个要看经过代理的层级次数或是是否始终将真实IP一路传下来。(注意:如果未经严格处理,可以被伪造)
 
</pre>
 
  
 +
显示器:https://item.jd.com/1418924.html
  
 +
主机箱:https://item.jd.com/533484.html
  
  
==常用配置==
+
proxmox 母机配置
<pre>##这个我打包已加上了的 
 
proxy_set_header Host $host;
 
proxy_set_header X-Real-IP $remote_addr;
 
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 
</pre>
 
  
 +
CPU:https://item.jd.com/3701943.html
  
==参考==
+
主板:https://item.jd.com/4257400.html  
nginx反向代理获取用户真实ip
 
http://www.nginx.cn/4646.html
 
  
NGINX多层转发或使用CDN之后如何获取用户真实IP
+
内存:https://item.jd.com/3864850.html
http://www.wkii.org/nginx-cdn-get-user-real-ip.html
 
  
获取用户真实 ip 地址的 nginx 相关配置
+
硬盘: https://item.jd.com/746691.html
https://my.oschina.net/moooofly/blog/295853
 
  
HTTP 请求头中的 X-Forwarded-For
+
电源:https://item.jd.com/876229.html  
https://imququ.com/post/x-forwarded-for-header-in-http.html
 
  
CDN下nginx获取用户真实IP地址
 
https://www.ttlsa.com/nginx/nginx-get-user-real-ip/
 
  
  
 +
主机箱:https://item.jd.com/533484.html
  
[[category:nginx]]
+
所谓生命在于运动  可惜很多运动我都不会 ,作为一种又贵又好玩的运动,而我作为一个常常加班的技术哥, 每周的羽毛球 真得是一个不可多得的 好玩有益有趣的活动,场上遇到 高手 就可以请教,遇到比自己差的 就可以K死他 , 遇到 技术差不多的,就可以组成双打  哈哈哈哈  总之 666 暂停5分钟 此处有掌声  给公司点32个赞  还有我们漂亮的组织人 小姐姐
 +
 
 +
 
 +
[[category:ops]]

2017年11月3日 (五) 06:02的版本

CPU:https://item.jd.com/3701943.html

主板:https://item.jd.com/4257400.html

内存:https://item.jd.com/2121097.html

硬盘:https://item.jd.com/3843702.html

电源:https://item.jd.com/876229.html

显示器:https://item.jd.com/1418924.html

主机箱:https://item.jd.com/533484.html


proxmox 母机配置

CPU:https://item.jd.com/3701943.html

主板:https://item.jd.com/4257400.html

内存:https://item.jd.com/3864850.html

硬盘: https://item.jd.com/746691.html

电源:https://item.jd.com/876229.html


主机箱:https://item.jd.com/533484.html

所谓生命在于运动 可惜很多运动我都不会 ,作为一种又贵又好玩的运动,而我作为一个常常加班的技术哥, 每周的羽毛球 真得是一个不可多得的 好玩有益有趣的活动,场上遇到 高手 就可以请教,遇到比自己差的 就可以K死他 , 遇到 技术差不多的,就可以组成双打 哈哈哈哈 总之 666 暂停5分钟 此处有掌声 给公司点32个赞 还有我们漂亮的组织人 小姐姐