1

tmp/restart.txt に触れてアプリを再起動すると、最初のリクエストでエラーがスローされます。通常は、Haml::Engine やその他の gem が見つからないことに関するものです。2 番目以降の要求はすべて正常に機能します。Rack 0.4.1 と Sinatra 0.3.3 を実行していた Dreamhost でこの問題が発生していましたが、自分のホストに移動して新しい Rack (0.9.1) と Sinatra (0.9.0.4) を実行した後も、まだ問題が発生しています。

正確な答えがわからないが、それを追跡する方法についてのヒントがある場合は、お知らせください。

これが私のconfig.ruです:

require 'rubygems'
require 'sinatra'

disable :run
set :environment, :production
set :raise_errors, true

require 'app.rb'
run Sinatra::Application
4

2 に答える 2

2

私はあなたが必要なすべての宝石を必要としていることを確認することを検討します。おそらく、あなたがそれをしている注文について何かがあり、それが最初に失敗する原因になっています。必要rubygemsですか?

アプリのラック構成を投稿した場合にも役立つことがあります(config.ru)。

于 2009-03-09T14:43:50.603 に答える
1

このエラーは、Sinatra gem の読み込みが遅すぎるために発生します。これが解決策です:

#config.ru

ENV['GEM_HOME'] ||= `gem env path`.strip.split(':').first
ENV['GEM_PATH'] ||= `gem env path`.strip
Gem.clear_paths

'アプリケーション ファイル名がここに入る' が必要です
セット:環境、:生産
Sinatra::Application を実行
于 2011-04-21T09:44:13.923 に答える