2012-01-12 2 views
5

ラックがインストールされていても、レールアプリケーションはエラー(ロードするラックがない)を表示することがあります。そのようなファイルがロードされない - ラック

[Gemfile] 宝石 'ラック'、 '1.2.1'

私はページを更新した場合、それが正常にロードされます。 これは宝石の問題ではありません。 何が原因の可能性がありますか?

ありがとうございました。

サム

答えて

4

あなたのウェブサイトをローカルに起動すると、これは起こりません。それであなたはどんなサービスを使いましたか?私はDreamHostでこの種のバグに遭遇しました。

DreamHostの場合、Rackの最新バージョンと互換性のない別のバージョン(古い)のRackを使用しているという問題があります。 GemfileにRackのバージョンを指定してください(ほとんどの場合、Railsもダウングレードする必要があります)。それは助けるかもしれません。

ローカルマシンでRVMを使用している可能性がありますが、Passenger + Nginx/Apacheなどのサーバーでは、RVMが正常に動作しない可能性があります(実際はPassenger + RVMを使用してエラーが発生します)。あなたのGemディレクトリを指定すると役立つかもしれません。

+1

非常に正しいです。私はDreamHost VPSを使用しています。私の開発環境はRVMです。別の奇妙なことに、たとえ私が 'バンドルインストール'をしても、私のレールアプリは「ロードするラックがない」ということです。私は 'gem install rack -v 1.2.1'を手動で行う必要があります。私の 'bundle install --deployment'に関連するかもしれません。しかし、私は確信していません。 –

+1

私はDreamhost VPSを使用していませんが、DreamHost共有サーバーを使用しています。私はVPSが共有サーバーよりずっと優れていると思います。 ENV ['GEM_HOME'] = "#{ENV ['HOME']} /。gems" ENV ['GEM_PATH'] = "#{ENV [ 'GEM_HOME']}:/ usr/lib/ruby​​/gems/1.8 " require 'rubygems' Gem.clear_paths あなたは試してみることができます。 Gemパスを指定します。 – Davidsun

+0

はい。それは問題を解決しました。ありがとう。 –

関連する問題