Heroku - 当一切看起来都正确时,Rails 应用程序会给出“没有这样的应用程序”

Posted

技术标签:

【中文标题】Heroku - 当一切看起来都正确时,Rails 应用程序会给出“没有这样的应用程序”【英文标题】:Heroku - Rails app gives 'No such app' when everything seems right 【发布时间】:2021-12-30 07:05:47 【问题描述】:

我有一个新的 Rails 6 应用程序,我正在尝试将其部署到 Heroku。

从部署日志和我使用heroku logs --tail 获得的日志来看,一切似乎都正常,但是当我转到已部署的 herokuapp.com 域时,我得到了“没有这样的应用程序”屏幕。

这是最新的日志:

2021-11-19T13:45:11.000000+00:00 app[api]: Build succeeded
2021-11-19T13:45:11.060793+00:00 heroku[web.1]: Starting process with command `bundle exec puma -C config/puma.rb`
2021-11-19T13:45:12.126085+00:00 app[web.1]: [4] Puma starting in cluster mode...
2021-11-19T13:45:12.126103+00:00 app[web.1]: [4] * Puma version: 5.5.2 (ruby 3.0.2-p107) ("Zawgyi")
2021-11-19T13:45:12.126103+00:00 app[web.1]: [4] *  Min threads: 5
2021-11-19T13:45:12.126104+00:00 app[web.1]: [4] *  Max threads: 5
2021-11-19T13:45:12.126104+00:00 app[web.1]: [4] *  Environment: production
2021-11-19T13:45:12.126104+00:00 app[web.1]: [4] *   Master PID: 4
2021-11-19T13:45:12.126104+00:00 app[web.1]: [4] *      Workers: 2
2021-11-19T13:45:12.126127+00:00 app[web.1]: [4] *     Restarts: (✔) hot (✖) phased
2021-11-19T13:45:12.126133+00:00 app[web.1]: [4] * Preloading application
2021-11-19T13:45:13.203269+00:00 app[web.1]: [4] * Listening on http://0.0.0.0:54150
2021-11-19T13:45:13.203334+00:00 app[web.1]: [4] Use Ctrl-C to stop
2021-11-19T13:45:13.207647+00:00 app[web.1]: [4] - Worker 0 (PID: 7) booted in 0.0s, phase: 0
2021-11-19T13:45:13.209455+00:00 app[web.1]: [4] - Worker 1 (PID: 9) booted in 0.0s, phase: 0
2021-11-19T13:45:13.336382+00:00 heroku[web.1]: State changed from starting to up

这是 puma 配置:

workers Integer(ENV['WEB_CONCURRENCY'] || 2)
threads_count = Integer(ENV['RAILS_MAX_THREADS'] || 5)
threads threads_count, threads_count

preload_app!

rackup      DefaultRackup
port        ENV['PORT']     || 3000
environment ENV['RACK_ENV'] || 'development'

on_worker_boot do
  # Worker specific setup for Rails 4.1+
  # See: https://devcenter.heroku.com/articles/deploying-rails-applications-with-the-puma-web-server#on-worker-boot
  ActiveRecord::Base.establish_connection
end

Heroku 在他们的文档中推荐的那个。

Procfile 是一个简单的单行:

web: bundle exec puma -C config/puma.rb

我还通过在我的机器上运行 PORT=3000 heroku local 尝试了 heroku 配置,它运行良好,但在 Heroku 的平台上却没有:(

我正在使用 Rails 6.1.4.1 和 ruby​​ 3.0.2

你能指出我可以尝试找到问题根源的地方吗?

谢谢你, 巴林特

【问题讨论】:

谷歌的所有事情都指向“DNS 问题”类型的问题。这让我想知道whatever.herokuapp.com 域在您尝试点击它时是否可能有错字? 可能不是因为我点击 Heroku 给我的链接为“您的应用可以在 找到”。 【参考方案1】:

这似乎是一个暂时的问题。几个小时后,当我回到这个问题时,它就可以正常工作,而无需我进行任何更改。

【讨论】:

以上是关于Heroku - 当一切看起来都正确时,Rails 应用程序会给出“没有这样的应用程序”的主要内容,如果未能解决你的问题,请参考以下文章

Heroku Rails JS管道问题

Rails API 422 无法处理的实体:没有可用的验证密钥,heroku

Rails、pjax 和数据表

将 Rails 应用程序推送到 Heroku 时缺少“sqlite3.h”

rails,fancybox 在 heroku 生产中不起作用

rails 应用程序在 heroku 上找不到 fontawesome 图标