One-Click Ruby InstallerでRubyをインストール

 http://rubyforge.org/projects/rubyinstaller/

 インストール先はわかりやすいようにXAMPPフォルダ下C:\xampp\rubyとしました。環境変数のPathにC:\xampp\ruby\bin;が追加されていることを念のために確認しておきます(自動で追加されているはずです)。コマンドプロンプトでruby -vを実行してバージョン情報を確認をします(Rubyが正常にインストールされているかどうかの確認)。

TOP

RubyにRailsとMySQLのライブラリを追加

 コマンドプロンプトより、Railsをインストールします。

gem install rails
 続いてMySQL。
gem install mysql
 インストール途中にどれをインストールするの?的なことを聞かれる。Windowsなので1を選択します。

TOP

MySQL関連でいろいろ作業

 DLLファイルのコピーを行っておかないとrailsコマンド、rakeコマンド実行時、およびRailsアプリからMySQLのDBへアクセスする度にLIBMYSQL.dllが見つからなかったため、このアプリケーションを…などとエラーがでることがあります。

TOP

Railsアプリを置くフォルダ作成

 C:\xampp\rails_appsを作っておきます。後でRailsを使って生成したアプリは全てここへ入れます。

TOP

httpd.confの編集

 C:\xampp\apache\conf内のhttpd.confに以下の設定を追加します。以下appnameは各それぞれRailsで生成した名称に置き換えてください。


の間に
    Alias /rails "c:/xampp/rails_apps/appname/public"
を追加。


適当な箇所に

    Options +ExecCGI +FollowSymLinks
    AllowOverride all
    Order allow,deny
    Allow from all
    AddHandler cgi-script .cgi

TOP

Railsアプリをコピー

 C:\xampp\rails_apps内へアプリをコピーする。

TOP

.htaccessを編集

 C:\xampp\rails_apps\appname\public\内の.htaccessの下記の箇所を編集。

以下をコメントアウト
#AddHandler fastcgi-script .fcgi
#AddHandler cgi-script .cgi
#Options +FollowSymLinks +ExecCGI


以下を追加。
RewriteBase /appname/

TOP

FastCGIのDLLファイルをインストール

 http://www.fastcgi.com/ からmod_fastcgi-2.4.6-AP22.dllをダウンロードしてくる。DL先のURIは現在は http://www.fastcgi.com/dist/ となっている。 ちなみにmod_fastcgi-2.4.6-AP22.dllの2.4.6はFastCGIのバージョン、AP22はApacheのバージョン2.2系の意らしいのでXAMPPが同梱しているApacheのバージョンが変更された場合は対応しているDLLを使うこと。 ダウンロードしたらC:\xampp\apache\modulesフォルダへコピーしてインストールとする。

TOP

RubyへFastCGIライブラリの追加

gem install fcgi
 失敗する場合、若しくはGemsをインストールしていない場合は下記サイトから直接ruby-fcgiを入手してインストールする。http://sugi.nemui.org/prod/ruby-fcgi/

TOP

httpd.confをFastCGI実行用に編集

 C:\xampp\apache\conf内のhttpd.confを編集。

以下を適切な箇所に追加。(だいたいまとまって書かれてるので、その辺りに)
LoadModule fastcgi_module modules/mod_fastcgi-2.4.6-AP22.dll


AddHandler cgi-script .cgi
の直下に追加。
AddHandler fastcgi-script .fcgi

TOP

.htaccessをFastCGI実行用に編集

 C:\xampp\rails_apps\appname\public\内の.htaccessを編集。

RewriteRule ^(.*)$ dispatch.cgi [QSA,L]
を以下のように変更。
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]

TOP

dispatch.fcgiを編集

#!c:/ruby/bin/ruby
を以下のように修正。
#!ruby
 以上でFastCGIで動く。FastCGIが起動しているかどうかの確認は、ブラウザからRailsのアプリケーションを実行後にWindows タスクマネージャのプロセスにruby.exeがあるかどうかを確認することで判断が可能。FastCGIが動いていない場合はRailsアプリ実行時だけruby.exeがプロセスに出現し、アプリ実行後はプロセスから消えます。

TOP