如何获取实际的客户端IP而非Docker IP?

时间:2020-05-12 13:37:57

标签: javascript docker express nginx nginx-reverse-proxy

在我的Express应用中,我正在读取IP,如下所示: const ip = req.headers["x-forwarded-for"] || req.connection.remoteAddress; 当有人从应用程序中点击/时,我返回了ip。

这是我的Nginx配置:

server {
    listen 80 default_server;
    server_name _;

location / {
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_pass http://api:3000; #port where you are serving your express app.

  }
}

但是,当我在localhost中运行应用程序时,我得到的是dockerIp(172.31.0.1),而不是实际的客户端ip。我该怎么办?

0 个答案:

没有答案