Foundation Sites deploy to Heroku



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

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

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

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

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

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

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

在您的情况下

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

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

您不需要在heroku中使用基础手表,因为不需要的文件观看模式

你需要运行一个服务器和服务器你的文件

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

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

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

其中server.js是expressjs服务器文件。这里有一个如何写的例子。

希望你的问题现在会少一些。

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

  1. 为什么您已经将所有node_module和bower_components上传到github。当您拥有各自的json文件时,任何人都可以执行npm-installbower-install来下载所有需要的软件包
  2. 随着推送克隆大小的增加,上传node_modules和bower_components将是一件令人头疼的事情

最新更新