bash: ./Main.js: 在 heroku 上权限被拒绝

bash: ./Main.js: Permission denied On heroku

我正在尝试在 Heroku 上托管一个程序,但每当我启动它时,我都会收到一条错误消息:

bash: ./Main.js: Permission denied
 Process exited with status 126

我设置了 Procfile 包含

node ./Main.js

如果您的 Procfile 仅包含

node ./Main.js

格式不正确。 Procfile 不是脚本,它是在 a specific format 中定义进程类型的文件。如果 Main.js 侦听您可能需要的 HTTP 请求

web: node ./Main.js

如果没有,您可能想要

worker: node ./Main.js

但是,您当前遇到的错误可能源于您的 package.json。你有启动脚本吗?是这样的吗?

{
    "scripts": {
        "start": "./Main.js"
    }
}

Heroku will run your start script as a web process in the absence of a ProcfileMain.js 可能不可执行。您可以通过将启动脚本更改为 运行 node 而不是您的脚本来解决您的问题:

{
    "scripts": {
        "start": "node ./Main.js"
    }
}