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

关闭终端后socket.io服务停止运行,cPanel共享主机下如何实现24小时运行?

cPanel共享主机socket.io服务后台常驻解决方案

你遇到的是终端会话结束时,绑定在会话上的前台进程被系统自动挂断的典型问题,以下3种方案均适配cPanel共享主机环境,无需保持终端开启即可实现服务7*24小时运行:

方案1:使用nohup命令(无需额外安装工具,快速临时部署)

nohup可以让进程忽略终端挂断信号,配合后台运行符即可实现脱离终端运行:

  • 启动命令:nohup /opt/cpanel/ea-nodejs10/bin/node index.js &
  • 执行后命令行输出的数字就是进程PID,服务运行日志会默认写入当前目录的nohup.out文件
  • 停止服务的方法:先执行ps aux | grep index.js查询到对应进程PID,再执行kill 你的进程PID即可

方案2:使用cPanel自带的Node.js应用管理器(最稳定,推荐优先用)

大部分主流cPanel面板都预装了Node.js托管功能,无需命令行操作即可实现进程自动托管,服务崩溃、服务器重启都会自动拉活:

  • 登录cPanel面板,在「软件」分类下找到Node.js 应用程序入口
  • 点击「创建应用」,选择Node.js版本为ea-nodejs10,指定应用的根目录路径、应用启动文件为index.js,配置绑定的域名/端口后点击启动即可

方案3:使用pm2进程管理器(功能最全,适合需要日志管理、自动重启的场景)

pm2是Node.js生态常用的进程管理工具,支持崩溃自动重启、日志查看、批量管理进程等功能:

  • 先执行命令安装pm2到用户目录:/opt/cpanel/ea-nodejs10/bin/npm install pm2 -g
  • 启动服务命令:~/.npm-global/bin/pm2 start index.js --interpreter /opt/cpanel/ea-nodejs10/bin/node
  • 执行pm2 save保存当前进程列表,再执行pm2 startup按照输出提示操作,即可配置开机自动启动
  • 常用操作:pm2 logs查看实时运行日志,pm2 restart index.js重启服务,pm2 stop index.js停止服务

注意事项

  • 部分共享主机有闲置进程自动清理规则,建议在socket.io代码中添加简单的心跳逻辑,避免进程被误杀
  • 端口需要选择1024以上的未被占用端口,不可使用系统保留端口

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 21:06:02