实用技巧
最后更新于:2022-04-02 05:31:41
## 前言
本文总结一些常用的nodejs技巧,也许对你有很大的帮助。
## 获取用户真实ip
如果是通过nginx做转发的,那么需要nginx做响应的设置,将远程的客户端ip带到请求头上
~~~
location /node {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr; //原请求来源ip 真实ip最可信
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; //http客户端或者反向代理生成的ip 可以通过逗号连起来, ip1,ip2,ip3...
#proxy_buffering off;
proxy_request_buffering off;
proxy_pass http://node;
}
~~~
node端获取用户真实ip地址,一般是在request中获取其ip地址的。
~~~
var get_ip = function(req) {
var ip = req.headers['x-real-ip'] ||
req.headers['x-forwarded-for'] ||
req.socket.remoteAddress || '';
if(ip.split(',').length>0){
ip = ip.split(',')[0];
}
return ip;
};
~~~
';