.net core 2.0 获取反向代理客户端IP

版权所有,禁止匿名转载;禁止商业使用。


HttpContext.Request.Headers中是"X-Forwarded-For",示例代码如下:

public string getRemoteIp()
 {
       var ip = httpContextAccessor.HttpContext.Request.Headers["X-Forwarded-For"].FirstOrDefault();
      if (string.IsNullOrEmpty(ip))
         {
             ip = "*.*.*.*";
         }
        return ip;
}



现在可以用域名 + 端口号直接访问这个 Node.js 服务,再配一个 Nginx 反向代理:

location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-NginX-Proxy true;
    proxy_pass http://127.0.0.1:9009/;
    proxy_redirect off;
}


0 0
登录后参与讨论。点击登录