私は2つのWebサーバーを持っていますが、WebサーバーAはWebサーバーBからデータを要求する必要があり、ユーザーのIPアドレスを送信する必要があります。しかし、サーバ上でfile_get_contents()
と呼ぶと、BはユーザではなくサーバAのIPアドレスを検出します。 2番目のオプションは、クエリ文字列にIPアドレスを渡すことですが、サーバBのnginxはgeoipモジュールでコンパイルされており、変数$_SERVER['COUNTRY_CODE']
の国コードが見つかります。ユーザーのIPアドレスを別のWebサーバーに渡す
私の質問は、リクエストでCURLを使用してサーバーAからサーバーBにユーザーのIPアドレスを渡す方法はありますか?おそらく私はいくつかのヘッダーを設定する必要があり、そのヘッダーはgeoipモジュールによって考慮されるでしょうか?サーバーA上の
HTTPヘッダーとしてIPを渡します。たとえば、http://serverfault.com/questions/331079/haproxy-and-forwarding-client-ip-address-to-servers –
'X-Forwarded-For:{IP}'をサーバBに転送し、サーバB上でNginxのRealIPモジュールを使用します。http://nginx.org/ja/docs/http/ngx_http_realip_module.html –