当前位置: 首页 > 知识库问答 >
问题:

Heroku node.js错误Heroku[router]:at=Error code=h10 desc=“app崩溃”method=get path=“/”

姚航
2023-03-14

我正在尝试将我的CRUD节点应用程序部署到Heroku,但无法发送索引页,甚至无法开始。我已经注释掉了应用程序中处理API的所有内容,只想为索引页提供服务,但由于某种原因无法这样做。

注意,如果可能的话,我现在不使用也不想使用任何类型的呈现引擎,比如EJS。

目录结构:

/invoicr (root)
  package.json
  Procfile
  server.js
  /client
    index.html

package.json

{
  "name": "invoicr",
  "version": "1.0.0",
  "description": "",
  "main": "server.js",
  "scripts": {
    "start": "node server.js",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "body-parser": "^1.15.0",
    "express": "^4.13.4",
    "mongoose": "^4.4.7"
  }
}

Procfile(不确定是否需要它作为package.json具有脚本start命令)

web: node server.js

server.js

var port = Number(process.env.PORT || 3000);
var express = require('express');
var app = express();

app.use(express.static(__dirname + '/client'));    
app.get('/', function(req, res){
  res.sendFile('/index.html'); //I've tried playing around with the path multiple ways and still get errors
});

app.listen(port);

我得到了一个简单的响应:

var server = http.createServer(function(req, res){
  res.writeHead(200, {'Content-Type':'text/html'});
  res.end('<h1>World</h1>');
}); 
server.listen(port);

但是,当我注释出var server=...并尝试提供html文件时,就会出现以下错误:Heroku[router]:at=error code=h10 desc=“app brassed”method=get path=“/”host=invoicr-test-app.herokuapp.com

部署命令

  • Git添加。
  • Git commit-m“message”
  • Git push heroku Master
  • Heroku ps:scale web=1
  • Heroku打开

如果你能帮我做错什么或做错什么,我将不胜感激,谢谢。

编辑

因此,像往常一样,它很简单,看起来我的依赖项没有安装,因为我在package.json中将它们设置为dev。感谢所有帮助我解决此问题的人。

package.json

{
  "name": "invoicr",
  "version": "1.0.0",
  "description": "",
  "main": "server.js",
  "scripts": {
    "start": "node server.js",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "body-parser": "^1.15.0",
    "express": "^4.13.4",
    "mongoose": "^4.4.7"
  }
}

共有1个答案

和和煦
2023-03-14

默认情况下,heroku不在devdependencies安装DEP,您需要将其设置为dependencies

来自Heroku:

Npm从以NPM_CONFIG开头的任何环境变量读取配置。默认情况下,我们将production=true设置为仅安装依赖项。如果要安装其他devDependencies,可以禁用此行为:heroku config:set npm_config_production=false

 类似资料:
  • 我在尝试部署我的节点应用程序时收到以下Heroku日志。我想不出这是什么原因。我猜这与我的文件中的favicon链接有关? Heroku测井 index.html

  • 我有一个错误应用程序在我的本地电脑上工作,但当我把它发送给heroku时,它崩溃了。错误日志给出错误H10&表示: 编辑: 有没有人以前有过这种情况,并且知道是什么导致了这个问题?我找不到解决办法。 多谢了。

  • 我的构建成功,但我的heroku网站返回错误。我使用heroku日志——tail来查看错误消息。下面是它所说的: 2019-01-23T17:33:34.339263 00:00 app[web.1]:File“/app/notetaking/prod\u settings.py”,第4行2019-01-23T17:33:34.339264 00:00 app[web.1]:SECURE\u PR

  • 在我的应用程序主页中,auto complete在对话框栏内的按钮上打开,该位置用于搜索查询。问题是,当我尝试通过再次按下按钮来更改位置时,应用程序崩溃,出现以下错误。 这是按钮按活动及其调用的方法。 下面是xml代码 以下是logcat 我已经研究了很多问题,几乎所有的答案都是在中添加一些代码行,而我没有这些代码行。在第一次点击片断的时候,问题是当我再次按下按钮来改变应用程序完全粉碎的位置。欢迎

  • 问题内容: 我必须加密一个字符串,但应用程序未达到加密方法,它在加载时崩溃。 我正在使用Apache Commons Codec库。 由于某种原因,该应用程序在第三行崩溃。 我的logcat。 有什么线索吗? 更新 我将代码更改为此: 但是现在我又遇到了其他错误 问题答案: 试试这个:

  • 我有一个node app,它正在本地运行,没有任何问题,但当我尝试用heroku部署它时,我做不到。我得到的错误是: null procfile: package.json: 请让我知道,如果你有任何建议,因为我正在努力解决这几个小时。