2

ローカルで正常に動作する小さな小さなSinatraアプリを作成しましたが、何らかの理由でオンラインにするとすぐに、「内部サーバーエラー」しか表示されません。

ロギング出力を取得するにはどうすればよいですか?

私はSinatraの本の指示に従って、乗客と一緒にDreamhostで実行しています。

そこで、ハンドラーを追加しました。

get '/hello/:name' do
  "Hello, #{params[:name]}!"
end

get '/nokogiri-test/' do
  doc = Nokogiri::HTML(open('http://www.google.co.il/search?q='+params[:query]))
  res = ''
  doc.xpath('//li//h3//a').each do |li|
    res+= li.content + '<br />'
  end
  res
end

最初のものは正常に動作し、2番目はエラーをスローします。なぜエラーが発生するのか興味がありません。フィードバックを受け取り、将来エラーを解決する方法に興味があります。

4

2 に答える 2

3

ああ!答えはここから来ます。

そこを見ようとは思わなかったでしょうが、私は必死になりました。解決策は、環境を:development:に設定することです。

set :environment, :development

それを構成ファイルに貼り付けたところ、すべてのエラー出力が生成されました。PRODUCTIONアプリでエラーの原因を突き止めたい場合でも、問題は解決しません...では、どうすれば解決できますか?

于 2009-12-08T11:16:12.200 に答える
0

apacheの内部サーバーエラーメッセージが表示されている場合は、apacheエラーログをチェックして何が起こっているのかを確認できるはずです。dreamhostではログファイルが保存されていると思います/home/your_user_name/logs/yourdomain.com/http/error.log

于 2009-12-08T07:58:23.090 に答える