We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
下記の部分ですが REMOTE_ADDR を返しているためロードバランサー等を使用している環境ではログに出力される IP がすべてロードバランサーの IP になってしまいます。
REMOTE_ADDR
ec-cube3/src/Eccube/Log/Monolog/Processor/WebProcessor.php
Lines 51 to 54 in 14cd0cf
X-Forwarded-For が存在する場合は X-Forwarded-For の値を返す方が良いのですが、以下の選択肢が出てくると思います。
, が増えても問題ないのであれば X-Forwarded-For を返す(, でログをパースしている場合に影響が出る可能性あり)
,
--- /dev/fd/63 2020-06-28 23:29:21.090798138 +0900 +++ src/Eccube/Log/Monolog/Processor/WebProcessor.php 2020-06-28 23:28:21.496937570 +0900 @@ -50,6 +50,9 @@ public function getClientIp() { + if (!empty($this->serverData['HTTP_X_FORWARDED_FOR'])) { + return $this->serverData['HTTP_X_FORWARDED_FOR']; + } return isset($this->serverData['REMOTE_ADDR']) ? $this->serverData['REMOTE_ADDR'] : null; }
, が増えると問題になる場合は X-Forwarded-For の一番左を返す(一番左にクライアント IP が入っていることを信頼する場合)
--- /dev/fd/63 2020-06-28 23:29:21.090798138 +0900 +++ src/Eccube/Log/Monolog/Processor/WebProcessor.php 2020-06-28 23:28:21.496937570 +0900 @@ -50,6 +50,9 @@ public function getClientIp() { + if (!empty($this->serverData['HTTP_X_FORWARDED_FOR'])) { + return array_map('trim', explode(',', $this->serverData['HTTP_X_FORWARDED_FOR']))[0]; + } return isset($this->serverData['REMOTE_ADDR']) ? $this->serverData['REMOTE_ADDR'] : null; }
ロードバランサー下で使うことを前提としておらず、各々のカスタマイズの範疇ということであればご放念ください。
ロードバランサーを使用している環境。
The text was updated successfully, but these errors were encountered:
No branches or pull requests
概要(Overview)
下記の部分ですが
REMOTE_ADDR
を返しているためロードバランサー等を使用している環境ではログに出力される IP がすべてロードバランサーの IP になってしまいます。ec-cube3/src/Eccube/Log/Monolog/Processor/WebProcessor.php
Lines 51 to 54 in 14cd0cf
期待する内容(Expect) or 要望 (Requirement)
X-Forwarded-For が存在する場合は X-Forwarded-For の値を返す方が良いのですが、以下の選択肢が出てくると思います。
,
が増えても問題ないのであれば X-Forwarded-For を返す(,
でログをパースしている場合に影響が出る可能性あり),
が増えると問題になる場合は X-Forwarded-For の一番左を返す(一番左にクライアント IP が入っていることを信頼する場合)ロードバランサー下で使うことを前提としておらず、各々のカスタマイズの範疇ということであればご放念ください。
再現手順(Procedure)
ロードバランサーを使用している環境。
環境 (environment)
関連情報 (Ref)
The text was updated successfully, but these errors were encountered: