[rails]Capistranoを使ってみる&FastCGIで動かしてみる 続き

fcgi関係インストールの続き

$ sudo apt-get install libfcgi-ruby1.8

apacheのバーチャルホストの設定

$ sudo emacs /etc/apache2/sites-available/suita16
NameVirtualHost *:80
<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/suita16/current/public
    ServerName suita16.localhost

    <Directory /var/www/suita16/current/public/>
        Options Indexes FollowSymLinks +ExecCGI
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

    ErrorLog /var/log/apache2/suita16.error.log
    LogLevel warn
    CustomLog /var/log/apache2/suita16_access.log combined
    ServerSignature On
</VirtualHost>
$ sudo ln -s /etc/apache2/sites-available /etc/apache2/sites-enabled/001-suita16
$ sudo echo '127.0.0.1       suita16.localhost' >> /etc/hosts

デプロイの実行

$ sudo mkdir /var/www/suita16
$ sudo chown jet:jet /var/www/suita16
$ cd ~/project/suita16
$ cap setup
$ cap deploy

.htaccessfcgi用になってなかったので修正

$ emacs public/.htaccess
- AddHandler fastcgi-script .fcgi
+ AddHandler fcgid-script .fcgi
- RewriteRule ^(.*)$ dispatch.cgi [QSA,L]
+ RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]

tmp/sessionのパーミッションのせいでうまく動かないのでdeployタスクでパーミッションを変更するようにする

昨日config/deploy.rbでオーバーライドした部分に追加する
  run <<-CMD
    chmod 777 #{release_path}/tmp/sessions &&                                   
    cp #{release_path}/config/database.yml.sample #{release_path}/config/databa\
se.yml                                                                          
  CMD