2006-01-22
@ [perl] mod_perl2ではPerlSetEnvが使えない?(解決)
ちょっと整理すると、もともとやりたかったことは、「PerlSetEnvで定義したものをstartup.plで参照する」ということだったのですが、それが会社のFedoraのmod_perl-2.0.1では出来て、自宅のDebianのmod_perl-2.0.2では出来なかったのです。
naoyaさんのつっこみを受けてSetHandlerのところを見直していたのですが、会社の環境でも自宅の環境でも SetHandler perl-script はいっしょだったので「なんでだろう〜」と悩んでいたら、問題の自宅の環境ではVirtualHostを使っていて、
PerlOptions +Parent
を追加したらちゃんとPerlSetEnv出来ました*1結局親のPerlインタプリターをそのまま使っていたからPerlSetEnvしても駄目だった、ということなのでしょうか。とにかく、ヒントをくださったnaoyaさんありがとうございました。
*1 会社のFedoraではVirtualHost使ってない
2007-01-22
@ [linux] trac-jaを入れてみた。
チケットとかWikiとかうまく活用すればかなり強力な構成管理ツールになるtracを今更ながらウチのサーバにも入れてみました。というわけで備忘録。以下はaheaheというプロジェクト用のtracをapache上に構築する例です。
$ unzip trac-0.10.1-ja-1.zip
# python setup.py install
(これでインストール完了)
# mkdir -p /var/local/trac/
# trac-admin /var/local/trac/aheahe initenv
(apacheから書き込めるように)
# chown -R www-data:www-data /var/local/trac/aheahe
(httpd.confの設定)
Alias /trac/aheahe/ /var/local/trac/aheahe/htdocs/
<Directory /var/local/trac/aheahe/htdocs>
Options FollowSymLinks ExecCGI
AllowOverride None
AddHandler cgi-script .cgi
DirectoryIndex trac.cgi
SetEnv TRAC_ENV "/var/local/trac/aheahe"
</Directory>
# ln -s /usr/share/trac/cgi-bin/trac.cgi /var/local/trac/aheahe/htdocs/trac.cgi
http://localhost/trac/aheaheにアクセスすると、日本語化されたtracの画面が!というわけで、CGIで動かしているので結構重いですが一応動きました。けっこう簡単ですね。
追記: やっぱりCGIだと重いのでFastCGIにしてみました。これでかなり快適。
# ln -s /usr/share/trac/cgi-bin/trac.fcgi /var/local/trac/aheahe/htdocs/trac.fcgi
LoadModule fcgid_module /usr/lib/apache2/modules/mod_fcgid.so
<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi
SocketPath /var/lib/apache2/fcgid/sock
DefaultInitEnv TRAC_ENV_PARENT_DIR /var/local/trac
IPCConnectTimeout 20
</IfModule>
Alias /trac/aheahe/ /var/local/trac/aheahe/htdocs/
<Directory /var/local/trac/aheahe/htdocs>
Options FollowSymLinks ExecCGI
AllowOverride None
AddHandler cgi-script .cgi
DirectoryIndex trac.fcgi
</Directory>