mod_perlによる高速化

エントリをPHPモジュール化してそれなりに高速化できたのだが、まだまだ遅い。金がない奴は工夫して速くするしかない。どうにかならんのかと思っていたら、Movable Type を mod_perl で高速化する – Apache::Registry 編という記事があるじゃないか。

このページではApacheもソースからmakeした状況での話しなのでVineの場合はこのままやってもうまくインストールできない。ということで、Vineでの導入方法を書いておく。

まず、mod_perlをインストールする。これはVinePlusに置いてあるのでaptでインストールすればいい。

apt-get install mod_perl

次にApache::Registryをインストールする。rootになって

perl -MCPAN -e shell
cpan> install Apache::Request

とやればよろしい。

次に/etc/httpd/conf/httpd.confにおまじないを付け足す。

<IfModule mod_perl.c>
<Perl>
use lib ‘/home/httpd/html/opentype/lib’;
use lib ‘/home/httpd/html/opentype/extlib’;
</Perl>

PerlModule Apache::Registry
<Directory /home/httpd/html/opentype>
<Files *.cgi>
SetHandler perl-script
PerlHandler Apache::Registry
Options +ExecCGI
PerlSendHeader Off
</Files>
</Directory>
</IfModule>

これで/etc/rc.d/init.d/httpd restartとやればOKなはずなんだが、これじゃまだダメ。理由はmod_perl で DB_File が動かない に詳しく書いてあるが、管理画面が開けないのだ。これには/etc/sysconfig/apacheファイルを作り対処する。
/etc/sysconfig/apache

export LD_PRELOAD=/lib/libdb.so

これで/etc/rc.d/init.d/httpd restartとやれば、高速化している(ハズ)。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください