Push Rails 3.2 站点被 Heroku 视为 PHP 站点

Posted

技术标签:

【中文标题】Push Rails 3.2 站点被 Heroku 视为 PHP 站点【英文标题】:Push Rails 3.2 site seen as PHP site by Heroku 【发布时间】:2012-12-30 00:20:40 【问题描述】:

我在顶部添加了一些细节来解释我是如何到达现在的位置的。

我创建了一个 Rails 3.2 应用程序并将其推送到 Heroku。我已经将几个站点推送到 Heroku,所以我已经做了很多次。但是,我从来没有见过这个。

我从正常的“heroku create”命令开始,然后是“git push heroku master”。当我运行它时,它返回消息“没有这样的应用程序...”

根据我在 Stack Overflow Pushing app to Heroku problem 上看到的内容,然后我输入“git remote -v”,看到两个 heroku 项目,输入“git remote rm heroku”以删除这些项目。我重新运行了“heroku create”、“git push heroku master”,站点确实推送到了 Heroku,但 Heroku 认为这是一个 php 站点。

我的整个应用程序中没有一行 PHP 代码。事实上,字符串“PHP”在任何地方都不存在。

我做错了什么,我该如何解决?

提前致谢。

【问题讨论】:

【参考方案1】:

您的 gem 文件是否命名为 Gemfile 而不是 gemfile?在 Heroku 之前看到过导致问题的原因。它使用您的方向/文件结构来了解它是一个 Rails 应用程序,并且区分大小写。

【讨论】:

它被命名为“Gemfile”,这与我成功推送到 Heroku 的每个站点使用的相同 嗯,可能也在寻找 config/application.rb。查看应用程序包,它会检查该文件是否存在以检测轨道。如果不是,可以发布 tree /path/to/yourapp 的输出 该网站是我搭建的原型。所以 config/application.rb 就在那里。我不确定你所说的树 /path/to/yourapp 是什么意思 你的根文件夹里可能有 index.php 吗? tree 是一个命令行工具。大多数操作系统都有它。显示您的完整目录结构。我想我可以看到与它有什么不同。但听起来任何人都在发生其他事情。不知道手头有什么。也许其他人很快就会 =)【参考方案2】:

我把它修好了。我删除了 git 目录,将其发布到 github 上的新存储库,将其克隆到新目录中,然后创建一个新的 Heroku 站点以将其推送到。

【讨论】:

以上是关于Push Rails 3.2 站点被 Heroku 视为 PHP 站点的主要内容,如果未能解决你的问题,请参考以下文章

git push heroku master错误权限被拒绝(公钥)[重复]

Heroku 上的 Rails 3.2 资产编译问题

heroku推送Rails 3.2应用时突然出现 "无法检测到RACK任务 "的情况(无其他错误)。

如何在 Heroku 上使用 Rails 3.2.2 实现 SPDY?

Heroku/Rails/Devise:你想要的改变被拒绝了

是否可以跳过 Heroku 上的单个 git push 的资产预编译步骤?