鯖を変えると同時に lighttpd から Apache2 にした。
FCGI, Ruby, 変更なしで というのの Apache2 版
とりあえず mod_fcgid を入れる。sudo apt-get install libapache2-mod-fcgid で a2enmod fcgid して有効にする。
apache2.conf に以下を追記。(この設定に書くべきかどうかわからない)
AddHandler fcgid-script .rb <Directory /> FCGIWrapper /home/cho45/bin/ruby-fcgi.rb .rb Options ExecCGI </Directory>
しかしながらこれだけだと AddHandler が上書きされてしまったので、.htaccess にも同じ AddHandler を書いた。
ruby-fcgi.rb は前のやつと一緒。
これで content-type ヘッダを吐かないでエラーになったとき (多くの場合そうなる) もちゃんとスタックトレースが見れるようになった。めでたしめでたし。
ところで、mod_rewrite が mod_negotiation よりあとに実行される (?) みたいで困る。
なぜか mod_rewrite が Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden
とか吐くので、Options +FollowSymLinks を書いたら治った。謎い。