はじめに
CodeIgniterに限らず、負荷分散のためにロードバランサ配下に複数のwwwサーバを配置してシステムを動かすというのは、結構あることだと思います。
CodeIgniterでは、config.phpの$config['proxy_ips']
という配列にロードバランサ(リバースプロキシ)のIPアドレスを入力することで、$this->input->ip_address()
や$this->input->valid_ip($ip)
等のメソッドで、ロードバランサのIPアドレスではなく、上位の(本来のアクセス元の)IPアドレスを取得できるようになります。
なお、実際のシステム運用においては、ロードバランサ配下のwwwサーバの共有ストレージはどうするのか、セッション管理はどうするのか等、他に考慮すべき点があります。
本投稿においては、ロードバランサ配下でCodeIgniterのシステムを動かすために必要な設定等をまとめていきます。
※現在執筆中です。随時更新します。