いくつかの問題を抱えている新しいWebサーバーのセットアップをテストしています。基本的に、Webサーバーがあり、コードはいくつかの興味深いことにリモートIPを使用し、特定のIP(オフィスなど)に保護されたapacheディレクトリも使用します。
ただし、これをha_proxyの背後に追い込んで、さらにアプリケーションサーバーを追加できるようにしましたが、現在では、リモートIPは実際のリモートユーザーではなく、プロキシIPとして常に通過しています。これは、一部の場所に到達できないことを意味し、ユーザーIPが重要な場所でアプリが少し奇妙に動作しています。
設定は次のとおりです。
global
maxconn 4096
pidfile /var/run/haproxy.pid
daemon
defaults
mode http
retries 3
option redispatch
maxconn 2000
contimeout 5000
clitimeout 50000
srvtimeout 50000
listen farm xxx.xxx.xxx.xxx:80
mode http
cookie GALAXY insert
balance roundrobin
option httpclose
option forwardfor
stats enable
stats auth username:userpass
server app1 xxx.xxx.xxx.xxx:80 maxconn 1 check
option forwardfor header X-Real-IP
とreqidel ^X-Real-IP:
、これはあなたのログでIPを偽造することを止めます。FYI:X-Real-IP
はNginX
'optionのデフォルトのヘッダーですset_real_ip_from
。