monolithic kernel

Ubuntu+Apache+Rack+FastCGIな環境でSinatraを使う

March 04, 2010

    Sinatraはあっさり動いてくれました。以下手順のメモです。

    sudo gem install sinatra

    ファイルの記述

    前回テストしたrack-testディレクトリ以下に次の3つのファイルを配置します。

    .htaccess

    ファイルやディレクトリが存在しない場合にはリクエストをすべてdispatch.fcgiへ投げるようにします。 RewriteEngine OnRewriteBase /DirectoryIndex dispatch.fcgiRewriteCond %{REQUESTFILENAME} !-fRewriteCond %{REQUESTFILENAME} !-dRewriteRule ^(.*)$ dispatch.fcgi/$1 [L]

    start.rb

    ここにはアプリケーション本体のコードを記述します。

    require 'rubygems'require 'sinatra'get '/' do  'Hello, World!'end

    dispatch.fcgi

    start.rbを読み込んでFastCGIとして起動させているだけのコードです。

    #!/usr/bin/env rubyrequire 'rubygems'require 'rack'require 'sinatra'require 'start'Rack::Handler::FastCGI.run Sinatra::Application

    テスト

    このコードを動かしてみると、うちではなぜか出力が以下のようになってしまいます。

    He

    ある程度出力が長ければ(30文字程度)途切れずに表示されるので実害はないのですが、よく分からない感じです。