gpt4 book ai didi

node.js - Express - req.ip 返回 127.0.0.1

转载 作者:IT老高 更新时间:2023-10-28 23:05:06 42 4
gpt4 key购买 nike

我的 express 服务器在 3000 端口上运行,使用 nginx 作为反向代理。

req.ip 总是返回 127.0.0.1 而 req.ips 返回一个空数组

app.enable('信任代理');

启用/不启用信任代理,x-forwarded-for 不起作用:

var ip_addr = req.headers['X-FORWARDED-FOR'] || req.connection.remoteAddress;

nginx配置:

server {    listen 80;    server_name localhost;    access_log /var/log/nginx/dev_localhost.log;    location / {        proxy_pass http://localhost:3000;        proxy_http_version 1.1;        proxy_set_header Upgrade $http_upgrade;        proxy_set_header Connection 'upgrade';        proxy_set_header Host $host;        proxy_cache_bypass $http_upgrade;    }}

如何获取请求客户端的 IP 地址?

最佳答案

您需要将适当的 X-Forwarded-For header 传递给您的上游。将这些行添加到您的上游配置中:

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;

关于node.js - Express - req.ip 返回 127.0.0.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26572611/

42 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com