Plesk 17环境下Node.js/NPM安装及应用启动问题求助
解决Plesk Onyx Node.js启动文件与NPM问题的实操步骤
嘿,我之前在Plesk Onyx上配置Node.js时也踩过几乎一样的坑,给你梳理几个能快速解决的办法:
1. 先创建极简启动文件(满足Plesk的强制要求)
Plesk必须识别到一个合法的Node.js启动文件才能解锁更多操作,哪怕你还没开始开发正式应用。你可以先写一个最基础的HTTP服务器文件,命名为server.js:
const http = require('http'); // 优先用Plesk分配的端口, fallback到3000 const port = process.env.PORT || 3000; const server = http.createServer((req, res) => { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Node.js is running on Plesk!\n'); }); server.listen(port, () => { console.log(`Server listening on port ${port}`); });
把这个文件上传到你的域名根目录(或者你想作为应用根目录的文件夹),用Plesk自带的文件管理器直接上传就行,也可以用SFTP工具传。
2. 配置Plesk的Node.js参数
回到域名的Node.js管理页面:
- 在「Application root」选择你刚才上传
server.js的文件夹 - 在「Application startup file」下拉框里选中
server.js - 点击「Enable Node.js」(如果之前是禁用状态),再点「Restart App」
这时候Plesk就能识别到你的应用,你也能看到更多操作选项了。
3. 修复SSH中无法使用NPM的问题
Plesk集成的Node.js已经自带了对应版本的NPM,不需要单独安装。如果SSH里用不了,试试这几步:
- 确保你用域名对应的系统用户登录SSH,别用root用户(权限限制会导致命令失效)
- 切换到Plesk安装的Node.js版本,比如你装的是16.x版本,就执行:
plesk nodejs use 16 --default - 输入
npm -v,应该就能看到NPM版本号了,这时候npm install之类的命令就能正常用了。
如果还是不行,检查Plesk的「SSH Access」设置,确认你的用户有「/bin/bash」的访问权限,而不是受限shell。
内容的提问来源于stack exchange,提问作者T.K
相关产品推荐
相关产品推荐

