構築/Linux サーバ/Web Server/2.b apache(with mod rpaf)によるAPサーバ構築

提供: スゴイようぃっきー!
移動: 案内検索

構築 / Linux サーバ / Web Server / 2.b apache(with mod_rpaf)によるAPサーバ構築


概要

  • apache を利用したAPサーバを構築する。
  • proxyサーバを介した接続なので、REMOTE_ADDRがproxyサーバのアドレスになってしまう。これをmod_rpafを使って、クライアントのオリジナルipの値をREMOTE_ADDRに代入する。

前提条件

1 with mod_rpaf の導入

mod_prafをダウンロードして解凍

[root@Sulu-web01 ~]# wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz
[root@Sulu-web01 ~]#  tar xvzf mod_rpaf-0.6.tar.gz
[root@Sulu-web01 ~]#  cd mod_rpaf-0.6

Makefileのapxsパスと、make 時の変数部分を編集

[root@Sulu-web01 mod_rpaf-0.6]# vi Makefile

-APXS=$(shell which apxs)
+APXS2=/usr/sbin/apxs

-install: mod_rpaf.so
-       $(APXS) -i -n mod_rpaf mod_rpaf.so
+#install: mod_rpaf.so
+#       $(APXS) -i -n mod_rpaf mod_rpaf.so

-install-2.0: mod_rpaf-2.0.o
#install-2.0: mod_rpaf-2.0.o
+install: mod_rpaf-2.0.o
        $(APXS2) -i -n mod_rpaf-2.0.so mod_rpaf-2.0.la
  • これで、checkinstallを実行した際に、apache2用mod_rpaf-2.0のrpmを作成できる。

checkinstallを実行

[root@Sulu-web01 mod_rpaf-0.6]# /usr/local/sbin/checkinstall

rpmをインストール

[root@Sulu-web01 mod_rpaf-0.6]# rpm -ivh /usr/src/redhat/RPMS/i386/mod_rpaf-0.6-1.i386.rpm

mod_rpaf用のconfを作成

[root@Sulu-web01 mod_rpaf-0.6]# vi /etc/httpd/conf.d/mod_praf.conf
LoadModule rpaf_module modules/mod_rpaf-2.0.so

RPAFenable On
RPAFsethostname Off
RPAFproxy_ips 192.168.3.111 192.168.3.112
  • RPAFproxy_ipsに、proxy_balancerサーバのipを記述。
    指定したipからの接続があった場合は、リクエストヘッダ中のX-Forwarded-Forの値をREMOTE_ADDRに上書きする。

httpd.confのグローバル設定

ServerTokensをオフ

ServerTokens Prod

virtual host のconfをincludeするように指定

Include conf/vhosts/*.conf

ServerSignature をオフ

ServerSignature Off

dav関係をコメントアウト

#<IfModule mod_dav_fs.c>
#    # Location of the WebDAV lock database.
#    DAVLockDB /var/lib/dav/lockdb
#</IfModule>

cgi-binエイリアスをコメントアウト

#ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
#Directory "/var/www/cgi-bin">
#    AllowOverride None
#    Options None
#    Order allow,deny
#    Allow from all
#</Directory>

LanguagePriorityではjaを一番優先に変更

LanguagePriority ja en ca cs da de el eo es et fr he hr it ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW

php.iniの設定

pecl memcacheの導入と確認

必要なパッケージのインストール

yum install gcc-c++ libtool zlib zlib-devel

pecl memcacheインストール

pecl install memcache

memcache.iniの新規作成 確認スクリプト実行
vi session.php <?php

session_start();
if ( ! session_is_registered("count") ) {
 session_register("count");
    $count = 0;
} else {
 $_SESSION['count']++;
}
print $_SESSION['count'];

?>

php-apc導入

パッケージのインストール

yum --enablerepo=utterramblings install -y php-apc

apc.phpの設置

cp /usr/share/doc/php-apc-3.0.19/apc.php /var/www/html/apc.php

imagemagick導入

  • パッケージのインストール
    • MediaWikiのサムネール画像処理をphp-gdでなくimageMagickで処理したいが為にインストールしています。
yum install ImageMagick


prev | 2.b apache(with mod_rpaf)によるAPサーバ構築