Node.js 在 CentOS 的错误处理策略
一 分层处理原则
二 运行时异常捕获与调试
三 进程与系统层面的稳定性
四 常见错误与对策速查
| 错误场景 | 典型错误信息 | 快速对策 |
|---|---|---|
| 命令未找到 | command not found | 安装 Node.js(如 sudo yum install nodejs),或配置 PATH;使用 nvm 管理多版本。 |
| 模块缺失 | Error: Cannot find module | 执行 npm install 安装依赖;核对 node_modules 与 package.json 一致性。 |
| 端口权限 | Error: listen EACCES(如 80/443) | 改用高端口(如 3000/8080)并通过 Nginx 反向代理;避免以 root 直接运行。 |
| 监听地址占用 | EADDRINUSE | 更换端口或结束占用进程(如 kill);上线前做端口冲突检测。 |
| 文件监听上限 | ENOSPC | 提升 inotify 限制:在 /etc/sysctl.conf 添加 fs.inotify.max_user_watches=524288 并执行 sysctl -p。 |
| glibc 版本低 | libm.so.6: version glibc_2.27 not found | 升级 glibc 或改用与系统兼容的 Node.js 版本(推荐通过 nvm 切换)。 |
| 编译环境缺失 | No acceptable C compiler found! | 安装 gcc 与开发工具链(如 yum groupinstall “Development Tools”)。 |