このエントリ の様な経緯で、うちでは apache + tracd という構成で trac を動かしてるのですが、tracd がしょっちゅう落ちるんですよね。1日に2, 3回ぐらいは落ちる感じ。で、5分ごとに cron で tracd プロセスを監視して、落ちてたら再起動ってなことをやってるんですが、typester さん から「うちは lighttpd + FastCGI でやってるよ」というアドバイスを頂いたので、試してみました。
やったことは以下の通り。
1, 2 については省略。ディストリビューションによって違うでしょうし、うちは Slackware だからあんまり参考にならないだろうし。3 については以下の様な内容の /usr/local/etc/lighttpd.conf を作成した。
server.modules = (
"mod_fastcgi",
)
server.document-root = "/home/miya/html"
server.errorlog = "/var/log/lighttpd.error.log"
mimetype.assign = (
".png" => "image/png",
)
static-file.exclude-extensions = ( ".fcgi" )
server.port = 81
server.bind = "localhost"
server.username = "svn"
server.groupname = "svn"
fastcgi.server = ("/public" =>
("public" =>
("socket" => "/tmp/trac-fastcgi.sock",
"bin-path" => "/usr/local/share/trac/cgi-bin/trac.fcgi",
"check-local" => "disable",
"bin-environment" =>
("TRAC_ENV" => "/home/miya/trac/public")
)
)
たったこれだけの設定でちゃんと動きました。起動は以下のコマンドで。
$ sudo /usr/local/sbin/lighttpd -f /usr/local/etc/lighttpd.conf
あとは apache の設定を変更してやれば OK。こんな感じで 動いてます。