ひたすらインストールメモばかり載せていますが。。。
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