apache + mod_fastcgi で retrospectiva を動かした
今まで Ruby をいじったことがなく、RoR の環境をどう作ればいいのかまったく分からなかったので、あちこちのページを読みつつやってみました。
ちなみに環境は CentOS 5 で、retrospectiva の Quick install までは完了済み。apache は yum で入れたまんま、httpd-devel とかも yum でインストールしてあります。gem とかのインストールは…忘れた。特に問題もなくできたはず。
まずは fcgi を普通に。
wget http://www.fastcgi.com/dist/fcgi-2.4.0.tar.gz tar zxvf fcgi-2.4.0.tar.gz cd fcgi-2.4.0 ./configure make sudo make install
次に mod_fastcgi を。
wget http://www.fastcgi.com/dist/mod_fastcgi-2.4.6.tar.gz tar zxvf mod_fastcgi-2.4.6.tar.gz cd mod_fastcgi-2.4.6 cp Makefile.AP2 Makefile #ここで、Makefaile 内の top_dir を /usr/lib/httpd に修正。 #もちろん環境によるでしょう。 make sudo make install
あとは gem で。
sudo gem install fcgi
そして、mod_fastcgi 用の conf ファイルを /etc/httpd/conf.d/fastcgi.conf として作成。
# # for fastcgi LoadModule fastcgi_module modules/mod_fastcgi.so AddHandler fastcgi-script .fcgi FastCGIConfig -maxClassProcesses 5 -minProcesses 1 FastCgiIpcDir /var/tmp/fcgi # RoR でいろいろするつもりは今のところないので、conf レベルで production 決めうち。 FastCGIConfig -initial-env RAILS_ENV=production
あとは、公式 wiki の Apache FastCGI configuration にあるように、httpd.conf にて VirtualHost の指定と .htaccess を修正。
これで特に error_log も吐かず、きちんと動作しています。これで完了、かな?
(なんだか Catalyst + mod_perl よりも面倒なのは慣れていないせいだろうか?)