【问题标题】:Foundation Sites deploy to HerokuFoundation Sites 部署到 Heroku
【发布时间】:2016-10-14 10:23:23
【问题描述】:

我使用基础站点​​创建了一个站点。它使用 Foundation CLI 使用标准安装。

我已经使用foundation watch 让网站在本地运行。当我将它推送到 Heroku 时,在 Heroku 控制台中构建成功,但是当我在浏览器中访问该站点时,我只收到一个应用程序错误。

Heroku 支持人员说我应该在我的启动脚本中使用$PORT,但我不知道在哪里配置它。这似乎也很奇怪,因为它是第一次安装。

有没有人遇到过类似的问题?

【问题讨论】:

  • 你能分享你的 github 链接,以便我们可以看到配置吗?我也有同样的问题。您使用的是哪个服务器?
  • @PriyeshKumar 这是github repo的链接github.com/gavinwye/northumberland-climbing-guide我正在推master。
  • @PriyeshKumar 我正在使用 heroku/nodejs buildpack。这就是“哪个服务器”的意思吗?

标签: heroku zurb-foundation


【解决方案1】:

以下是我在您的应用中发现的一些问题。

首先,heroku 不会安装任何你的 devDependencies,所以请确保构建所需的所有依赖项都在 dependencies 列表中。

Heroku 搜索用于启动应用程序的 Procfile。如果它没有找到,它将按照标准程序进行。

你的情况

它运行 npm start。它调用 gulp 来运行构建、服务器和监视(这不是必需的)。

第二个heroku动态分配端口号。但是您的服务器任务从 config.yml 绑定了一个静态端口号 8000。所以这可能会使您的应用程序失败。

你不需要在heroku中使用foundation watch,因为不需要文件的watch模式

您需要运行服务器并为您的文件提供服务器

我的建议是在您使用 gulp 构建应用程序后使用 expressJS 服务器(因为我已经使用过它)

在您的启动脚本(package.json)中,您可以编写类似

的内容
"scripts": {
    "start": "gulp && node server.js",
    "build": "gulp build --production"
  }

其中 server.js 是 expressjs 服务器文件。 here's 一个例子你怎么写。

希望您的问题现在少一些。

不要说您的 github 存储库,但这里有一些可能对您以及您的客户/用户或任何人都有帮助的要点。

  1. 为什么您已将所有 node_modules 和 bower_components 上传到 github。当您拥有各自的 json 文件时,任何人都可以执行 npm installbower install 来下载所有必需的包。
  2. 随着 pushclone 大小的增加,上传 node_modules 和 bower_components 会让您头疼。

【讨论】:

  • 谢谢@PriyeshKumar,有机会我会看看所有这些东西。关于 node_modules 和 bower_components 我应该让 git 忽略它们。
猜你喜欢
  • 1970-01-01
  • 2012-10-21
  • 2011-10-16
  • 1970-01-01
  • 2012-01-09
  • 2021-09-23
  • 2019-03-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多