proxy_pass に $remote_addr または $http_remote_addr を含めようとしていますが、成功しません。
書き換えルールが機能する
location ^~ /freegeoip/ {
rewrite ^ http://freegeoip.net/json/$remote_addr last;
}
$remote_addr のない proxy_pass は機能しますが、freegeoip は x-Real-IP を読み取りません
location ^~ /freegeoip/ {
proxy_pass http://freegeoip.net/json/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
}
次に、次のように、リクエストの最後に ip を追加します。
location ^~ /freegeoip/ {
proxy_pass http://freegeoip.net/json/$remote_addr;
}
しかし、nginx はこのエラーを報告します: freegeoip.net を解決するためのリゾルバーが定義されていません