カテゴリー:
環境構築
タグ:
 apache ip proxy

このエントリーをはてなブックマークに追加
更新日時:
2012年11月24日(土)
作成日時:
2012年11月24日(土)

前の記事 / 次の記事

リバースプロキシを立てたら
ApacheのログでIPアドレスが全部"127.0.0.1"になってしまったので修正。

【参考ページ】
・Apache でプロキシ経由のリクエストからクライアントの IP アドレスを取得する
http://www.geocities.jp/gronlijus/skill/apache/apache-custom-log1.html

やること

  1. Apacheのログの出力フォーマットに "X-Forwarded-For" を追加する。
  2. そのフォーマットが出力されるようにする。

まずApacheの設定ファイルを編集。

vim /etc/httpd/conf/httpd.conf

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

とかなってるところがあるので、
それを真似てX-Forwarded-Forも出るようにして、"combined_with_realip"とか適当な名前付けて設定する。

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" \"%{X-Forwarded-For}i\"" combined_with_realip

次に

CustomLog logs/access_log combined

とかなってるところがあるので、今設定した"combined_with_realip"が出るようにする。

#CustomLog logs/access_log combined
CustomLog logs/access_log combined_with_real_ip

httpd再起動後、access_log に実IPが含まれていればOK。