2017-02-14 12 views
2

私は本当に興味深い問題があります。私はウェブサイトを持っており、私はクライアントのIPアドレスを取得したい。私はいくつかの孤独を見つけたが、彼らのどれも働かなかった。私はnginxを使用しています。NodejsのIPアドレスの結果:: 1

私はヨーヨー使用3党freamworkを試してみたが、同じ結果expressjs

app.post("/api/test",(req, res)=>{ 
console.log(req.header('x-forwarded-for')) // result "::1" 
console.log(req.connection.remoteAddress) // result "::1" 
console.log(req.ip) // result "::1" 
}) 

を使用しています。

+0

設定に問題があるようですが、 ':: 1'は' localhost'を意味します。何らかのプロキシメカニズムを使用していますか?または、ローカルマシン上でサーバーを実行していますか? –

答えて

0

localhostで作業している場合、これは通常です。これをサーバーに記録すると、ユーザーのアドレスが取得されます。

それとも、あなたがnginxのための適切なヘッダに

を設定する必要があり、この場合、ノード・サーバーの前にnginxのまたは類似のリバースプロキシを実行している可能性がありますが、このものを必要とする

proxy_set_header  X-Real-IP  $remote_addr; 
proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for; 

チェックhere詳細は