You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

DirectAdmin环境Node.js依赖路径异常致启动崩溃的解决咨询

解决DirectAdmin共享主机Node.js依赖路径问题

方法1:用环境变量指定模块查找路径

在应用启动脚本或者DirectAdmin的启动配置里,添加NODE_PATH环境变量,指向你的node_modules所在路径:

export NODE_PATH=/home/你的用户名/nodevenv/你的应用名/16/lib/node_modules

然后启动应用就行,Node.js会自动去这个路径找依赖。如果是在DirectAdmin的应用设置里写启动命令,直接把环境变量加在命令前面:

NODE_PATH=/home/你的用户名/nodevenv/你的应用名/16/lib/node_modules node app.js

方法2:修改npm的prefix配置(永久生效)

要是想让后续npm安装依赖都直接装到应用目录,就在应用目录下执行:

npm config set prefix ./

之后npm会把模块放在应用目录的node_modules里,对应的命令行工具会放在当前目录的./bin下。注意先确认应用目录有写入权限,共享主机有时候会限制这个。

方法3:代码里手动加查找路径

如果上面的方法都不好使,就在你的Node.js入口文件(比如app.js)最顶部加这段代码,手动把目标路径加入模块查找列表:

const path = require('path');
const nodeModulesPath = '/home/你的用户名/nodevenv/你的应用名/16/lib/node_modules';
require('module').Module.globalPaths.push(nodeModulesPath);

这样Node.js加载模块时会优先检查这个路径。

额外提醒

  • 把命令里的你的用户名和你的应用名换成你实际的主机用户名和应用名称
  • 要是用DirectAdmin的Node.js管理器装依赖,装之前先切换到应用目录,或者直接加--prefix参数指定安装路径:
npm install --prefix /home/你的用户名/public_html/你的应用名 [依赖包名]

这样依赖会直接装到应用目录的node_modules下面。

内容的提问来源于stack exchange,提问作者MrLoon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 19:04:59