2013-12-10 21 views
2

我試圖讓HAProxy的通過傳遞用戶的IP地址我的快遞沒有返回IP地址。這是我在Node.js中使用的代碼:HAProxy的Node.js的+,快遞不轉發IP地址

var usrIP = "0"; 
    if(req.connection.remoteAddress !== null || req.connection.remoteAddress !== "null" || req.connection.remoteAddress.length > 1) { 
     usrIP = req.connection.remoteAddress; 
    } 

任何想法可能會出錯?

回答

2

您將在頭文件中獲得客戶端IP。

「forwardfor」選項,它將爲原始客戶端的IP地址添加一個「X-Forwarded-For」標頭。您還必須使用「httpclose」,以確保 ,你將重寫每一個請求,不僅每個 會議的第一個:

option httpclose 
    option forwardfor 

線122 http://haproxy.1wt.eu/download/1.2/doc/architecture.txt

+0

試圖讀取'時,仍然得到同樣的錯誤req.connection.remoteAddress' – user3082584

+0

這解決了它! 'req.headers ['x-forwarded-for']'感謝幫助 – user3082584

+0

'req.headers ['x-forwarded-for']'爲我解決了這個問題,以及在執行 'option httpclose option forwardfor' in haproxy –