mod_perlのインストール
1999/1/21
バージョン | mod_perl 1.17 | |
OS | Slackware 3.6 (Linux 2.0.35) | |
ホームページ | http://perl.apache.org/ (公式ページ) | |
ダウンロード | ftp://ftp.lab.kdd.co.jp/lang/perl/CPAN/modules/by-module/Apache/ | |
備考 | Apache 1.3.3 |
PerlをApacheモジュールとして動かしてしまうものです。CGIで動かしていたスクリプトが、これを導入するだけでオーバーヘッドが解消し、かなり高速になります。
00/2/19
・ libwww-perlをインストールするときsuに-を付けないとうまくインストールできない場合がある
・ DSOでインストールする方法を追加
準備(libwww-perlのインストール)
libwww-perlが必要ですので先ずインストールします。今回はCPANモジュールを使ってダウンロード&インストールしてしまいました。CPANモジュール初回実行時は、ダウンロード先など色々聞かれるので、適当に答える必要があります。
$ su - # perl -MCPAN -e shell cpan> install Bundle::LWP
いろいろ聞かれますが、とりあえずリターン連打でインストール。
準備
今回はmod_perl本体はCPANモジュールを使わず手でダウンロードしてインストールしました。
$ tar xvfz mod_perl-1.16.tar.gz $ cd mod_perl-1.16
Apacheのソースディレクトリに書き込んだり、Perlモジュールの追加が行われるので、rootになってからインストールします。
$ su # perl Makefile.PL USE_APACI=1 APACHE_PREFIX=/usr/local/apache/ Will configure via APACI Configure mod_perl with ../apache_1.3.3/src ? [y] Shall I build httpd in ../apache_1.3.3/src for you? [y]
ちなみに、DSOでインストールする時は、以下のようにします。
# perl Makefile.PL USE_APXS=1 WITH_APXS=/usr/local/apache/bin/apxs EVERYTHING=1
コンパイル
# make
これでApacheの再構築まで自動的に行われます。
インストール
# make test # make install
この手順でインストールした場合、以前APACIでインストールした他のモジュールがインストールされていない状態になってしまうので、そういう場合は、もう一度再構築します。
# cd /usr/local/src/apache_1.3.3 # ./configure --activate-module=src/modules/perl/libperl.a --activate-module=src/modules/php3/libphp3.a # make # make install
設定
とりあえずCGI互換で動作させるには、.htaccessやsrm.confに以下のように書きます。この例では、拡張子.cgiのファイルのみ、mod_perlを使って処理します。
<Files *.cgi> SetHandler perl-script PerlHandler Apache::Registry PerlSendHeader On </Files>