gpt4 book ai didi

node.js - openshift 与 nodejs 不尊重 package.json 中我的服务器文件的路径

转载 作者:太空宇宙 更新时间:2023-11-04 00:54:28 24 4
gpt4 key购买 nike

我一直在开发 Node.js 服务器,现在正在将其上传到 OpenShift。我没有使用默认的 ./server.js 文件,而是我的插入点是 ./bin/www。

我已将其设置为 package.json 中的插入文件,如下所示:

{
"name": "NekoList",
"version": "0.0.0",
"private": true,
"scripts": {
"start": "./bin/www"
...
},

我可以验证 www 是否位于 ./bin 这个目录中,并且它是一个有效的 JavaScript 文件,在我的本地环境中运行良好。

这是根据here

但是,我可以从日志中看出 OpenShift 仍在尝试查找 ./server.js

这里可能发生了什么?我还可以发布哪些其他有帮助的信息?

注意:这与this thread中的问题有关。 ,但是,当我意识到问题实际上不是依赖问题时,我决定为真正的问题创建一个新线程。

最佳答案

好吧,我想我已经找到问题了。

根据您提供的信息和此处的信息:Markers files for Node.js ,您必须添加标记“use_npm”才能使用 npm start启动服务器(在 package.json 的脚本部分中查找启动脚本)而不是: supervisor <whatever-you-gave-for-main-on-package.json .

因此您必须添加一个名为 use_npm 的空文件下.openshift/markers 。然后提交更改并部署。然后它应该用 ./bin/www 启动服务器您的项目,您仍然需要使用 node $OPENSHIFT_REPO_DIR/bin/www对于 start在 package.json 上。

顺便说一句,您在这里还没有给出 package.json 主要部分的内容。

关于node.js - openshift 与 nodejs 不尊重 package.json 中我的服务器文件的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30637181/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com