温馨提示×

debian nodejs怎么开服务

小樊
45
2026-09-04 17:52:40
栏目: 编程语言

在 Debian 上用 Node.js 开服务,通常有以下几种常见方式,从「最简单」到「生产可用」给你说明。


一、最基础:直接运行 Node 脚本(开发/测试)

1. 安装 Node.js

sudo apt update
sudo apt install nodejs npm

验证:

node -v

2. 写一个简单的服务

server.js

const http = require('http');

const server = http.createServer((req, res) => {
  res.writeHead(200, { 'Content-Type': 'text/plain' });
  res.end('Hello Debian\n');
});

server.listen(3000, () => {
  console.log('Server running on port 3000');
});

3. 启动

node server.js

访问:

http://服务器IP:3000

⚠️ 这种方式关闭终端就会停


二、后台运行(不推荐长期使用)

nohup node server.js &

node server.js &

查看:

ps aux | grep node

三、生产推荐:用 systemd 管理 Node 服务 ✅

1. 创建服务文件

sudo nano /etc/systemd/system/nodeapp.service

内容示例:

[Unit]
Description=Node.js App
After=network.target

[Service]
Type=simple
User=www-data
WorkingDirectory=/var/www/nodeapp
ExecStart=/usr/bin/node /var/www/nodeapp/server.js
Restart=on-failure

[Install]
WantedBy=multi-user.target

2. 重载并启动

sudo systemctl daemon-reload
sudo systemctl start nodeapp
sudo systemctl enable nodeapp

3. 常用命令

sudo systemctl status nodeapp
sudo systemctl restart nodeapp
sudo journalctl -u nodeapp

四、用 Nginx 反代(常见生产方案)

1. 安装 Nginx

sudo apt install nginx

2. 配置反代

sudo nano /etc/nginx/sites-available/nodeapp
server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
    }
}
sudo ln -s /etc/nginx/sites-available/nodeapp /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

五、进阶(可选)

  • PM2(进程管理)
npm install -g pm2
pm2 start server.js
pm2 startup
  • Docker(隔离部署)
  • TLS:使用 Let’s Encrypt(certbot)

如果你愿意,可以告诉我:

  • 开发环境还是生产环境
  • Express / Koa / 原生
  • 是否要 域名 + HTTPS

我可以直接给你一套完整配置。

0