Closed mattintosh4 closed 4 years ago
私もロードバランサをかました時に同様の課題にぶち当たりました。。。
@mattintosh4 3系のリポジトリは4系のリポジトリから分かれ、以下に移行されています。 https://github.com/EC-CUBE/ec-cube3/issues
お手数ですが3系の以下のリポジトリでIssueを立て直していただけますでしょうか?
@okazy 自前の環境の場合はインフラ側で調整出来ないこともないのですが、他の部分で X-Forwarded-For を考慮している部分もあるのでこちらも考慮してみてはいかがかなと思いました。 3系は別になっていたのですね。失礼しました。後ほど立て直しさせていただきます。
3系の方に転機させていただきましたのでクローズします。 https://github.com/EC-CUBE/ec-cube3/issues/88
ありがとうございます!
概要(Overview)
下記の部分ですが
REMOTE_ADDR
を返しているためロードバランサー等を使用している環境ではログに出力される IP がすべてロードバランサーの IP になってしまいます。https://github.com/EC-CUBE/ec-cube/blob/002ad401b57218c6f0458507ab02110d33b97458/src/Eccube/Log/Monolog/Processor/WebProcessor.php#L51-L54
期待する内容(Expect) or 要望 (Requirement)
X-Forwarded-For が存在する場合は X-Forwarded-For の値を返す方が良いのですが、以下の選択肢が出てくると思います。
,
が増えても問題ないのであれば X-Forwarded-For を返す(,
でログをパースしている場合に影響が出る可能性あり),
が増えると問題になる場合は X-Forwarded-For の一番左を返す(一番左にクライアント IP が入っていることを信頼する場合)ロードバランサー下で使うことを前提としておらず、各々のカスタマイズの範疇ということであればご放念ください。
再現手順(Procedure)
ロードバランサーを使用している環境。
環境 (environment)
関連情報 (Ref)