请问Workerman在Docker容器中如何获取真实用户ip,目前通过$connection->getRemoteIp()拿到的都是172开头的ip。
如果你用了代理,http协议需要从http头中获取真实ip,否则是代理服务器的ip。
$request->getRealIp(true) 这样试试呢
最终应该走nginx代理? proxy_set_header X-Real-IP $remote_addr;
木有走nginx哦,非http服务,只是用docker容器跑的workerman普通ws服务。主要是docker网络这块也不是很熟,但是172开头的ip应该是取了docker这层的ip了。甚是苦恼。。。
如果你用了代理,http协议需要从http头中获取真实ip,否则是代理服务器的ip。
$request->getRealIp(true)
这样试试呢
最终应该走nginx代理?
proxy_set_header X-Real-IP $remote_addr;
木有走nginx哦,非http服务,只是用docker容器跑的workerman普通ws服务。主要是docker网络这块也不是很熟,但是172开头的ip应该是取了docker这层的ip了。甚是苦恼。。。