web-dev-qa-db-ja.com

Nginx $ http_x_forwarded_forが常に設定されるわけではない

アクセスログで、_$http_x_forwarded_for_変数が設定されていないことがあります。代わりに、正しいIPは_$remote_addr_に設定されているものです。 _$http_x_forwarded_for_を_$remote_addr_として設定することは可能ですか?

基本的に、nginxロジックでは、次の疑似コード

if($http_x_forwarded_for == null) $http_x_forwarded_for = $remote_addr

_$http_x_forwarded_for_に基づいていくつかの制限要求ゾーンを設定しているので、この問題が原因で、常に有効になるとは限りません。

ありがとう。

6
SteveEdson

ngx_http_realip_module が有効になっていて、プロキシのすべてのIPが信頼できるものとしてリストされているとは限らないと思います。

3
ceejayoz