私はRubyとSinatraで足を濡らそうとしている新人です。Slicehostの記事に従って、Nginxへのリバースプロキシを使用してRuby1.9.1とThin1.2.7をセットアップしました。
シンサーバーを起動しようとするまで、ほとんどのことがスムーズに進んでいました。
これは、ログから取得した出力です。
$ sudo thin -C config.yml -R config.ru start
/home/user/public_html/testapp/config.ru:9:in `block in <main>': undefined method `application' for Sinatra:Module (NoMethodError)
from /var/lib/gems/1.9.1/gems/rack-1.1.0/lib/rack/builder.rb:46:in `instance_eval'
from /var/lib/gems/1.9.1/gems/rack-1.1.0/lib/rack/builder.rb:46:in `initialize'
from /home/user/public_html/testapp/config.ru:1:in `new'
from /home/user/public_html/testapp/config.ru:1:in `<main>'
from /var/lib/gems/1.9.1/gems/thin-1.2.7/lib/rack/adapter/loader.rb:36:in `eval'
from /var/lib/gems/1.9.1/gems/thin-1.2.7/lib/rack/adapter/loader.rb:36:in `load'
from /var/lib/gems/1.9.1/gems/thin-1.2.7/lib/thin/controllers/controller.rb:175:in `load_rackup_config'
from /var/lib/gems/1.9.1/gems/thin-1.2.7/lib/thin/controllers/controller.rb:65:in `start'
from /var/lib/gems/1.9.1/gems/thin-1.2.7/lib/thin/runner.rb:177:in `run_command'
from /var/lib/gems/1.9.1/gems/thin-1.2.7/lib/thin/runner.rb:143:in `run!'
from /var/lib/gems/1.9.1/gems/thin-1.2.7/bin/thin:6:in `<top (required)>'
from /usr/bin/thin:19:in `load'
from /usr/bin/thin:19:in `<main>'
誰かがそれを見る必要がある場合、私のSinatraコードが存在する場所(基本的にはSinatraブックの上部からリッピングされたサンプルコードです)にconfig.yml、config.ru、myapp.rbを投稿できますが、何かアイデアがあればそのログ自体に基づいて何が起こっているのかについては、世界中のGoogleで何も見つからなかったので、感謝します。
また、これはまだシナトラをシンで実行するための好ましい方法ですか?
Ruby自体を実行するだけでアプリを動作させることができます。
$ ruby myapp.rb
== Sinatra/1.0 has taken the stage on 4567 for development with backup from Thin
これにより、サンドボックスで自分のページを表示できます。
皆さん、ありがとうございました。