0

Heroku でスタックを作成し、すべてがデプロイされましたが、実際に URL 経由でアクセスしようとすると、デフォルトで 500.html エラー ページが表示されます。アプリはローカルホストで問題なく動作しましたが、sqlite3 で開発しました。それ以来、Gemfile を次のように変更し、bundle install を実行しました。

#gem 'sqlite3'

gem 'thin'

group :production do
   gem 'pg'
end
group :development, :test do
   gem 'sqlite3'
end

URL にアクセスすると、私のログイン ページを指しているはずです。

これは私のdatabase.ymlファイルがどのように見えるかです...これは私の問題と関係がありますか?

development:
   adapter: sqlite3
   database: db/development.sqlite3
   pool: 5
   timeout: 5000

# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
   adapter: sqlite3
   database: db/test.sqlite3
   pool: 5
   timeout: 5000

production:
  adapter: sqlite3
  database: db/production.sqlite3
  pool: 5
  timeout: 5000

アドバイスをありがとう

4

3 に答える 3

1

heroku logs500 エラーの原因を示すログ ファイルを表示するために使用します。移行を実行していない場合、それが原因である可能性があります。必ず実行してください:

heroku run rake db:migrate

アプリを使用する前に。

于 2013-04-02T19:05:54.357 に答える
0

コメントから、heroku へのプロダクションに sqlite を使用していることがわかります。Heroku は sqlite をサポートしていないため、これは不可能です。本番環境には pg または mysql2 を使用できます。ここで解決策を確認できます:

Heroku へのデプロイ用に database.yml を構成する方法

完了したら、これらのコマンドを実行します

heroku run rake db:reset
heroku run rake db:drop db:create db:seed
heroku run rake db:migrate
于 2015-01-29T16:30:00.463 に答える