nginx反向代理,node获取真实IP

先上代码

nginx配置 加上下面三行代码


location / { 

proxy_set_header Host $host; 
proxy_set_header X-Real-IP $remote_addr; 
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
}


node代码


function getClientIp(req) { 
var ipAddress; 
var forwardedIpsStr = req.header('x-forwarded-for'); 
if (forwardedIpsStr) { 
var forwardedIps = forwardedIpsStr.split(','); 
ipAddress = forwardedIps[0]; 
} 
if (!ipAddress) { 
ipAddress = req.connection.remoteAddress; 
} 
return ipAddress; 
}

console.log( getClientIp(req))


因为涉及兼容性问题,可以通过req.header('x-forwarded-for')与req.connection.remoteAddress来获取IP地址, 

上面是封装好的一个函数:


参考地址:http://blog.csdn.net/marujunyy/article/details/8486895 

http://blog.csdn.net/kyfxbl/article/details/16357739 

与本文有关的文章

express/ multer 上传图片文件 pm2 启动node以及linux 环境变量配置 nginx基础入门 nginx设置多个node项目 nginx静态资源与node冲突解决方案 nodejs/pm2基本操作 Nginx的启动、停止与重启 Nginx301重定向 cookie,session,nodejs log4js-node日记模块 百度分享报错url不合法!!原创!! npm的常用命令。 nginx反向代理,node获取真实IP nodejs fs删文件 multer对单个上传的文件做限制处理。 nodejs发送邮件实例 qq email nodejs模块之FS File System(文件系统) DEMO演示 nodejs express允许跨域访问设置 用nodejs批量获取qq群成员信息 nodejs request模块实例以及爬虫 nodejs express 模块公共代码部分提取 nginx配置不带WWW跳转到带WWW nginx 403错误 nginx 413 Request Entity Too Large express cookie清除无效?? Node中require和import 转:【全文】狼叔:如何正确的学习Node.js 分享一些有用的工具网站 Nodejs接收图片base64格式保存为文件再返回图片url地址 &#x(unicode编码后的汉字)JS转译方法-nodejs爬虫转译乱码 linux centos 7.4安装nodejs与nginx mongodb Nodejs全局模块安装了却显示命令不存在? nodejs服务器文件直传阿里云oss nodejs ejs模块try catch的坑 nodejs fs模块常用API 读取目录,重命名等等 nodejs实现百度post推送 nodejs爬虫记录 nodejs 分词模块推荐-nodejieba npm 模块安装机制简介 nodejs流式传输请求时如何处理错误 在pipe前添加on error | Error: getaddrinfo EAI_AGAIN www.xxx.com | connect timedout 百度翻译API nodejs版本 nodejs 图片加水印 images模块 nodejs gm图片操作模块笔记 npm cheerio模块移除元素上不必要的属性 - nodejs nodejs 模块推荐 html-minifier (html压缩)压缩模块 nodejs 定时任务模块(node-schedule) nodejs模块之 cheerio 中文乱码 jq.fileupload上传文件 服务的nodejs接收 demo nodejs express - PayloadTooLargeError: request entity too large ? nodejs使用gmail批量发送email nodejs request乱码 nginx禁止ip直接访问 nodejs下载远程文件 nodejs下载远程文件 简要DEMO nginx 通过GeoIP禁止国外IP访问 nodejs 移动文件位置 nodejs 递归删除方法
回到顶部