繁体   English   中英

Plesk + Phusion 乘客:core-js npm 安装失败 - “npm ERR: sh: node: command not found”

[英]Plesk + Phusion Passenger: core-js npm install fails - "npm ERR! sh: node: command not found"

我正在 Plesk 管理的服务器上安装节点(版本 17.3.0)。 我只是这台服务器的众多用户之一,我没有超级用户密码,并且 nodejs 应用程序应该在我管理的子域中运行。

我正在按照此示例页面中的说明进行操作。 失败的阶段是通过 NPM 安装依赖项。

该日志包含以下相关行:

npm WARN deprecated core-js@2.6.12: core-js@<3 is no longer maintained and not recommended for usage due to the number of issues. Please, upgrade your dependencies to the actual version of core-js@3.
...
...
...
npm ERR! code 127
npm ERR! path /var/......../sandbox/helloworld/node_modules/core-js
npm ERR! command failed
npm ERR! command sh -c node -e "try{require('./postinstall')}catch(e){}"
npm ERR! sh: node: command not found

(我不相信这个警告真的很重要,因为我以前在不会导致失败的情况下见过它。)

显然节点可执行文件不在我的 $PATH 中,但是这个安装是由 Phusion Passenger 管理的(据我所知)。 我需要知道 nodejs 可执行文件的部署位置,以便将其添加到我的 $PATH。

我为每个依赖项使用最后一个可用版本。

我设法找到了解决此问题的方法。

此页面中,他们建议在.npmrc中放置一个记录scripts-prepend-node-path=true

这解决了问题。 作为一个很好的副作用,我现在可以读取安装节点的日志: /opt/plesk/node/<MAJOR_VERSION_NUMBER>/bin 我在修改问题标题时将其放在这里,因为这很可能是 Plesk 安装/配置模式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM