好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > nginx做負載CDN加速獲取端真實ip

nginx做負載CDN加速獲取端真實ip

熱門標簽:長沙智能外呼系統中心 聯客智能語音外呼系統賬號格式 南昌語音外呼系統代理 成都移動外呼系統 電銷機器人的效果 佛山外呼系統平臺 南寧智能外呼系統線路商 美圖手機 長春外呼系統價格
nginx做負載CDN加速獲取端真實ip
在不用cdn的情況下,nginx做負載獲取真實ip時,nginx配置如下:
Java代碼 
proxy_set_header        Host            $host; 
proxy_set_header        X-Real-IP       $remote_addr; 
proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for; 
然后后端服務器獲取ip代碼:
Java代碼 

復制代碼
代碼如下:

String address = request.getHeader("X-Forwarded-For");
if (address != null address.length() > 0
!"unknown".equalsIgnoreCase(address)) {
return address;
}
address = request.getHeader("Proxy-Client-IP");
if (address != null address.length() > 0
!"unknown".equalsIgnoreCase(address)) {
return address;
}
address = request.getHeader("WL-Proxy-Client-IP");
if (address != null address.length() > 0
!"unknown".equalsIgnoreCase(address)) {
return address;
}
return request.getRemoteAddr();

這樣就能獲取到真實的IP,服務器測試一下:
不加cdn,獲取得IP:123.116.126.51(我當前客戶端機器的真實IP)
然后加上加了cdn后,后去到的IP:123.116.126.51, 202.108.251.166(hosts指向cdn的ip)
即:client 真實IP,代理IP,google之,
X-Forwarded-For:簡稱XFF頭,它代表客戶端,也就是HTTP的請求端真實的IP,只有在通過了HTTP 代理或者負載均衡服務器時才會添加該項 。
標準格式如下:
X-Forwarded-For: client1, proxy1, proxy2
從標準格式可以看出,X-Forwarded-For頭信息可以有多個,中間用逗號分隔,第一項為真實的客戶端ip,剩下的就是曾經經過的代理或負載均衡的ip地址,經過幾個就會出現幾個。
當Nginx設置X-Forwarded-For等于$proxy_add_x_forwarded_for后會有兩種情況發生
1、如果從CDN過來的請求沒有設置X-Forwarded-For頭(通常這種事情不會發生),而到了我們這里Nginx設置將其設置為$proxy_add_x_forwarded_for的話,X-Forwarded-For的信息應該為CDN的IP,因為相對于Nginx負載均衡來說客戶端即為CDN,這樣的話,后端的web程序時死活也獲得不了真實用戶的IP的。
2、CDN設置了X-Forwarded-For,我們這里又設置了一次,且值為$proxy_add_x_forwarded_for的話,那么X-Forwarded-For的內容變成 ”客戶端IP,CDN的ip“如果是這種情況的話,那后端的程序通過X-Forwarded-For獲得客戶端IP,則取逗號分隔的第一項即可。
這個比較頭疼,如果只想獲取客戶端真實ip,那么只能修改我們后端代碼,如果有多個,那么取第一個。這不是我想要的,
那么怎么樣才能不修改就能真實IP呢?
Nginx中還有一個$http_x_forwarded_for變量,這個變量中保存的內容就是請求中的X-Forwarded-For信息。如果后端獲得X-Forwarded-For信息的程序兼容性不好的話(沒有考慮到X-Forwarded-For含有多個IP的情況),最好就不要將X-Forwarded-For設置為 $proxy_add_x_forwarded_for。應該設置為$http_x_forwarded_for或者干脆不設置!
上面這段話的意思是我們不加 $proxy_add_x_forwarded_for, 但是這樣不在cdn的情況下去會取不到真實IP,有沒有一個兩全齊美的方法呢?
經過幾種配置之后,發現做如下配置:
Java代碼     
proxy_set_header X-Forwarded-For  $http_x_forwarded_for; 
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;     
這樣配置第一次獲取 $http_x_forwarded_for,如果不存在,那么獲取$proxy_add_x_forwarded_for。
這樣不管是否在cdn環境,都可以獲得一個客戶端IP。
(注:多層代理未測試)

標簽:邵陽 慶陽 阜陽 東營 云浮 法律服務 沈陽 新鄉

巨人網絡通訊聲明:本文標題《nginx做負載CDN加速獲取端真實ip》,本文關鍵詞  nginx,做,負載,CDN,加速,獲取,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《nginx做負載CDN加速獲取端真實ip》相關的同類信息!
  • 本頁收集關于nginx做負載CDN加速獲取端真實ip的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 蜜桃AV视频一区二区| 你敢说你不性福小说| 99久热国产精品视频尤物不卡| 在线播放亚洲精品| 在线亚洲色图| 亚洲精品无码AAAAA爱的色放| 国产一级婬乱A片免费看小说| 嫩草视频在线观看www视频| 韩国ticklevk| 120秒午夜体验区5次| 欧美freeoo性另类特级| 欧美视频免费在线播放| 毛片网站在线播放| 中文字幕亚洲一区二区三区| 韩国精品一区二区三区在线观看 | 黄色a级片网站| 制服师生中文字幕| 嬷嬷当众调教花魁肉核| 乖?好舒服?把腿张开微博| 奶好大灬灬好硬灬好爽灬无套视频| 1一925大雄的性事全文免费下载 | 女bbbbxxxx毛片视频丶| 黄色三级小说| 一男一女搞基视频| 秋霞欧美三级377| 国产伦理年轻的岳?高压监狱| 午夜时刻免费观看啪啪| 翁虹三级bd电影全部在线| 小婬妇水好多真紧奶头好硬小说 | 国色天香视频免费观看在线观看| 揉死你个浪货| 大胸美女被吃奶爽死视频免费| 重口猎奇AV| 用力呀…使劲我快受不了| 91精品国产91久久久久久青草| 2022国产刮伦真实视频 | 青青青视频免费线看视频| 中文字幕久久久久| 韩国穿丝袜三级bd高清| 老师你下面好紧好湿h| 久久精品国产曰本波多野结衣|