gateway获取客户端ip地址

詹少

使用$_SERVER获取客户端IP,拿到的一直都是127.0.0.1,我怀疑是nginx做了代理造成的,请问还有其他办法获取客户端真实ip吗?

我整理一下我的环境吧!我是用gateway做服务端跟.net做的客户端软件通信,text协议的,然后nginx做了代理,这样就导致获取客户端真实ip有误,文档中说的方法是配置wss的获取真实ip的,无法适用于tcp协议的

7771 1 0
1个回答

walkor

参考手册 http://doc.workerman.net/315297

透过nginx wss代理如何获取客户端真实ip 部分,原理是一样的

  • 詹少 2017-10-18

    谢谢你, 我看到的onWebSocketConnect里面使用$_SESSION['realIP'] = $_SERVER['HTTP_X_REAL_IP']; 必须这样吗? 我不是用的websocket,用text协议的

  • walkor 2017-10-18

    上面的是http协议的,利用http头传递的真实ip。text协议用nginx代理获取不到真实ip的,不用折腾了

  • 詹少 2017-10-23

    @1:哦 !搜了好久也没搜到,谢谢啦!那只能先用http请求记住缓存住客户端ip再在socket里面去运用了!

年代过于久远,无法发表回答
🔝