ひたすらインストールメモばかり載せていますが。。。
Apache2,Ruby on Railsがそれぞれインストールされている状態で、FastCGIの設定。
FastCGIのインストール
GentooでFastCGIを使う場合は、mod_fastcgiかmod_fcgidの2種類の選択肢があります。
今回は、mod_fcgidを使いました。(元は同じ物のようです。)
# vi /etc/make.conf USE="apache2" # emerge fcg # emerge mod_fcgid # gem install fcgi --remote
apacheの設定
/etc/conf.d/apache2に以下を設定
APACHE2_OPTS="-D FCGID" 複数のオプションを設定する場合は、こんな感じ APACHE2_OPTS="-D DEFAULT_VHOST -D SVN -D DAV -D FCGID"
FastCGIを使う為の設定
#vi /etc/apache2/modules.d/20_mod_fcgid.conf <IfDefine FASTCGI> <IfModule !mod_fcgid.c> LoadModule fcgid_module modules/mod_fcgid.so DefaultInitEnv RAILS_ENV development IPComm Timeout 40 IPCConnect Timeout 10 </IfModule> <IfModule mod_fcgid.c> AddHandler fcgid-script .fcgi </IfModule> </IfDefine>
DefaultInitEnv RAILS_ENVの部分は、状況によって変えてください。
production | development | test
AddHandler fcgid-script .fcgiの部分に注意してください。
mod_fastfcgiの場合と異なっています。
Railsの設定
適当なディレクトリにRailsのアプリを作成。所有者をapacheの実行ユーザにする
$rails ror $chown -R apache:apache ror
apache側の設定
#vi /etc/apache2/vhosts.d/00_default_vhost.conf <VirtualHost *:80> ServerName ror DocumentRoot "/yourdirectory/ror/public" ErrorLog "/yourdirectory/ror/log/server.log" <Directory /yourdirectory/ror/public/> Options +FollowSymLinks #AddHandler cgi-script .cgi AddHandler fcgid-script .fcgi AllowOverride all Order allow,deny Allow from all </Directory> </VirtualHost>
publicの直下に.htaccessを置き、以下の一文を追加
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
apache側の再起動
#apache2ctl restart