http://d.hatena.ne.jp/end0tknr/20090314/1237003479
以前も同様のエントリを記載していますが、apache 2.2.19 + mod_perl-2.0.5 の組み合わせでは、なぜか静的moduleとしてinstallできません。(error msg等は面倒なので書きません)
なので、mod_perlをdsoで組み込んでみました。
とりあえず、動作しています。
apache
$ cd httpd-2.2.19 $ ./configure --prefix=/home/endo/local/apache22 \ --with-mpm=prefork \ --enable-proxy \ --enable-so $ make $ make install
mod_perl
$ cd mod_perl-2.0.5 $ /usr/local/bin/perl Makefile.PL \ USE_APXS=1 \ WITH_APXS=/home/endo/local/apache22/bin/apxs \ EVERYTHING=1 <略> Next we need to know where the 'apxs' script is located. This script provides a lot of information about the Apache installation, and makes it easier to find things on your system. Normally it's located in the same directory as the 'httpd' executable. If you don't yet have Apache installed you can build Apache against the Apache source code, but you won't be able to run the test suite (a very important step). Therefore you may want to install Apache before proceeding. Please provide a full path to 'apxs' executable (press Enter if you don't have it installed): ★なぜapxsのpathを聞くの? $ make $ make test # make install
httpd.conf 抜粋
LoadModule perl_module modules/mod_perl.so PerlModule Apache2::Reload PerlInitHandler Apache2::Reload PerlSetVar ReloadDebug Off #PerlRequire "/home/endo/local/apache22/conf/startup.pl" <Location /perl-status> SetHandler perl-script PerlHandler Apache2::Status </Location> #認証が必要な部分 <Directory /home/endo/dev/pri> AuthType ApacheSSO AuthName member PerlAuthenHandler ApacheSSO->authen PerlAuthzHandler ApacheSSO->authz require valid-user <Files "*.pl"> Options ExecCGI AddHandler cgi-script .pl SetHandler perl-script PerlHandler ModPerl::Registry PerlSendHeader On </Files> </Directory> Alias /pri /home/endo/dev/pri #login画面を表示 <Location /login_form> AuthType ApacheSSO AuthName member SetHandler perl-script PerlHandler ApacheSSO->login_form </Location> #login実行(ticket発行) <Location /login> AuthType ApacheSSO AuthName member SetHandler perl-script PerlHandler ApacheSSO->login </Location> #logout実行(ticket無効化) <Location /logout> AuthType ApacheSSO AuthName member SetHandler perl-script PerlHandler ApacheSSO->logout </Location>