无法在 Plesk 上找到模块 "express" - Node.js 安装,由 Phusion Passenger 管理

cannot find module "express" - Node.js installation on Plesk, managed by Phusion Passenger

我在共享服务器上的一个域上启用了 node.js。所有管理操作都是从 Plesk Obsidian 18.0.20 的控制台完成的。我看到 Plesk 通过 Phusion Passenger 6.0.6 管理 nodejs。

我无法创建快速服务器。我的 nodejs 应用程序启动失败并显示消息:

The Phusion Passenger application server tried to start the web application through 
a Passenger-internal helper tool called the "wrapper". 
But Passenger was unable to execute that helper tool because it encountered 
an internal error.

The stdout/stderr output of the subprocess so far is:

......./loader.js:xxx
    throw err;
    ^

Error: Cannot find module 'express'
Require stack:
- ......../server.js
- ...../passenger/helper-scripts/node-loader.js
.....
.....

我的 server.js 文件的第一行包含指令:

const express = require('express');

我知道我应该访问 运行 nodejs 环境并发出命令:

npm install express

但我不知道如何操作,无论是从 Plesk 控制台还是从我的用户的 putty window。

我设法解决了这个问题。问题的根源是 Plesk 期望 package.json 文件位于域根目录中。相反,它在一个子目录中。

后来我也找到了这个教程:https://www.plesk.com/blog/product-technology/node-js-plesk-onyx/