久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Java無(wú)法獲取真實(shí)IP解決方案

瀏覽:23日期:2022-08-19 16:18:17

問(wèn)題

最近在寫(xiě)博客瀏覽量的時(shí)候,設(shè)計(jì)了這么一個(gè)邏輯:同一個(gè)IP瀏覽一遍文章,5分鐘內(nèi)不刷新次數(shù)。就需要在服務(wù)器端得到用戶的真實(shí)IP,我代碼是這樣寫(xiě)的(從網(wǎng)上找的方法):

public static String getRealIp(HttpServletRequest request) {String ip = request.getHeader('x-forwarded-for');String unknown = 'unknown';if (ip == null || ip.length() == 0 || unknown.equalsIgnoreCase(ip)) {ip = request.getHeader('Proxy-Client-IP');}if (ip == null || ip.length() == 0 || unknown.equalsIgnoreCase(ip)) {ip = request.getHeader('WL-Proxy-Client-IP');}if (ip == null || ip.length() == 0 || unknown.equalsIgnoreCase(ip)) {ip = request.getHeader('HTTP_CLIENT_IP');}if (ip == null || ip.length() == 0 || unknown.equalsIgnoreCase(ip)) {ip = request.getHeader('HTTP_X_FORWARDED_FOR');}if (ip == null || ip.length() == 0 || unknown.equalsIgnoreCase(ip)) {ip = request.getRemoteAddr();}return ip;}

發(fā)現(xiàn)得到的IP總172開(kāi)頭的IP,我查了下是本地局域網(wǎng)的IP,我的項(xiàng)目又是docker布署的,這又記我聯(lián)想到docker內(nèi)部的IP。。。

解決辦法

最后才發(fā)現(xiàn)nginx代理接口的時(shí)候,需要做獲取IP的配置

location ^~ /api { proxy_pass http://127.0.0.1:8110/; proxy_read_timeout 90; #得到請(qǐng)求真實(shí)IP proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header HTTP_X_FORWARDED_FOR $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; proxy_redirect default;}

加上面面的配置,問(wèn)題解決!

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 乐安县| 偏关县| 潜山县| 敦化市| 赣榆县| 麻江县| 丰原市| 麻城市| 泊头市| 黄平县| 庄河市| 张家口市| 岑巩县| 乐清市| 绍兴县| 娄底市| 灵丘县| 泗阳县| 玉溪市| 界首市| 池州市| 黑水县| 连南| 邯郸县| 辉南县| 卢氏县| 云浮市| 连州市| 那曲县| 拉孜县| 西畴县| 拉萨市| 大邑县| 大冶市| 南丰县| 盐山县| 远安县| 肥乡县| 乡城县| 吉安县| 吴桥县|