我在AWS Elastic Beanstalk上的Docker容器中有一個Node.js服務器。我注意到,如果我嘗試通過請求標頭訪問用戶的IP地址,我沒有得到用戶的實際遠程IP地址。相反,我得到的似乎是Docker容器的IP地址 - 172.19.0.1
。原始IP未傳遞到單個容器上的容器AWS上的Docker鏡像Elastic Beanstalk
我確信Docker或Elastic Beanstalk的配置方式很簡單,我需要更改以獲取所需的行爲 - 但我不知道需要更改哪些內容。
我的Dockerfile中有東西嗎? 在我推&部署我的容器之前,我的docker build
命令中有一個標誌或東西? ELB或Elastic Beanstalk上的AWS上的一些配置?
會真的很感謝從哪裏開始!
哪個請求頭你搜索的客戶端IP? 'X-Forwarded-For'? –
可以幫助您(但我還沒有嘗試過):使用Elastic Beanstalk,您可以配置負載平衡器並告訴他不要重寫X-Forwarded-For字段:摘自http://docs.aws.amazon。 com/en_us/elasticbeanstalk/latest/dg/using-features.managing.elb.html:'如果希望負載平衡器按原樣轉發請求,則可以將偵聽器協議從HTTP更改爲TCP。這樣可以防止改寫頭文件(包括X - 轉發,對於)負載平衡器和不粘性sessions' –
我使用哈皮所以我試圖訪問'request.info.remoteAddress' – otajor