目前大部分获取ip的方式:beat.getRequest().getRemoteAddr()
但是,如果通过nginx反向代理的话,就获取不到真实ip,是获取的nginx的ip

需要:添加    proxy_set_header  X-Real-IP  $remote_addr;

   server {
listen 80;
server_name price.kuche.com;
location / {
root html;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http:backServers;
}
}

添加一个表头声明

然后这样取

    public static String getRemoteAddrIp(HttpServletRequest request) {
String ipFromNginx = getHeader(request, "X-Real-IP");
System.out.println("ipFromNginx:" + ipFromNginx);
System.out.println("getRemoteAddr:" + request.getRemoteAddr());
return StringUtil.isEmpty(ipFromNginx) ? request.getRemoteAddr() : ipFromNginx;
} private static String getHeader(HttpServletRequest request, String headName) {
String value = request.getHeader(headName);
return !StringUtils.isBlank(value) && !"unknown".equalsIgnoreCase(value) ? value : "";
}

最新文章

  1. 设计模式C#实现(十)——桥接模式
  2. CSS基础知识真难啊-font
  3. ubuntu下Eclipse下添加GBK编码
  4. 【8-17】HTML测试
  5. sed 指令
  6. 传智Java基础知识测试
  7. Having the Result Set of a Stored Proc Sent to You by RSS Feed.
  8. js 对象与函数的区别
  9. 从零开始学android开发-详细谈谈intent的startActivityForResult()方法
  10. 无法嵌入互操作类型“Microsoft.Office.Interop.Word.ApplicationClass”。请改用适用的接口。
  11. 【HDOJ】3400 Line belt
  12. Java有用经验总结--Swing篇
  13. 掌握Chrome Developer Tools:下一阶段前端开发技术
  14. 如何升级laravel5.4到laravel5.5并使用新特性?
  15. ARM的编程模式
  16. PhpStorm+xdebug调试——更新
  17. @JsonIgnore注解可以实现不返回前端字段
  18. 您还差宝贝一张语文教学光盘!教你如何制作ISO文件
  19. Android : VLC for Android 环境搭建及编译
  20. 吴裕雄 06-MySQL选择数据库

热门文章

  1. windows本地自动集成代码+SSH服务器配置
  2. windows下安装PhpDocumentor(phpdoc)笔记
  3. Atitit..文件上传组件选型and最佳实践总结(2)----断点续传
  4. iOS开发-友盟分享(3)
  5. JAVA学习绘图颜色及其笔画属性设置字体显示文字
  6. js 导出Excel
  7. win10 体验
  8. android: 多线程编程基础
  9. Transistor 晶体管 场效应 双极型 达林顿 CMOS PMOS BJT FET
  10. 【CUDA学习】共享存储器