Nibelungen Code

Category Archives: Apache

Squid配下でのApacheでアクセス元のIPを取得する

このエントリをはてなブックマークに追加このエントリをGoogle bookmarkに追加このエントリをdel.icio.usに追加このエントリをfacebookに追加

何も設定しないとApacheのログにはSquidのIPが書かれてしまう。

Squidの設定に

forwarded_for on

を記述する。

そしてApache側のサーバーに
X-Forwarded-ForヘッダからIPアドレスを取得するモジュールをインストールする。

sudo aptitude install libapache2-mod-rpaf

mod_rpafの設定を変更する。RPAFproxy_ipsにはSquidサーバーのIPを記述しておく。

sudo nano /etc/apache2/mods-available/rpaf.conf
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 192.168.1.201

mod_rpafが組み込まれていなければ

sudo a2enmod rpaf

Apacheを再起動

sudo service apache2 restart

これでApacheのログにアクセス元のIPが書かれてるはず。

とりあえずApacheのログさえちゃんとなればどうでもいいんです!
っていう場合にはSquidの設定はせずにmod_rpafだけインストールすればいい。
もしくはApacheのログの設定で対処しましょう。

LogFormatの%hを%{X-Forwarded-For}iに変更する。
combinedが他でも使っていて変更できない!という場合は別の名前で新たに記述しておく。reverseproxyとか。

sudo nano /etc/apache2/apache2.conf
LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined

Apacheを再起動

sudo service apache2 restart

ただこれだとREMOTE_ADDRがSquidのサーバーのIPなのかな?わからん。

 | 
このエントリーをはてなブックマークに追加

GoogleからApacheのモジュールが出た

このエントリをはてなブックマークに追加このエントリをGoogle bookmarkに追加このエントリをdel.icio.usに追加このエントリをfacebookに追加

Googleからmod_pagespeedというApacheのモジュールが出たようなので自サーバーに入れてみる。

sudo wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-beta_current_amd64.deb
sudo dpkg -i mod-pagespeed-beta_current_amd64.deb
sudo service apache2 restart

これでApacheに組み込まれた。

体感速度としては・・・Squidが間にあるのであまり実感できないが無いよりマシ、ということで。

 | 
このエントリーをはてなブックマークに追加