ubuntu上js如何配置服务器
导读:在 Ubuntu 上用 JavaScript 搭建并配置服务器 一 准备环境与版本管理 更新系统并安装基础工具: sudo apt update && sudo apt upgrade -y sudo apt insta...
在 Ubuntu 上用 JavaScript 搭建并配置服务器
一 准备环境与版本管理
- 更新系统并安装基础工具:
- sudo apt update & & sudo apt upgrade -y
- sudo apt install -y build-essential
- 使用 nvm 安装与管理 Node.js LTS(推荐):
- curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
- 重新加载终端后执行:nvm install 18(或 20),nvm use 18
- 验证:node -v、npm -v
- 全局安装进程管理器 PM2:npm install -g pm2。
二 部署后端 Node.js 服务
- 将代码上传到服务器(三选一):
- Git:git clone < repo_url> & & cd
- SCP:scp -r /local/project user@server_ip:/remote/dir
- Rsync:rsync -avz -e ssh /local/project/ user@server_ip:/remote/dir
- 安装依赖与构建:
- npm install(或 npm ci --only=production 用于生产)
- 如有前端构建步骤:npm run build
- 配置环境变量:编辑项目根目录的 .env(如数据库连接、端口、密钥等)
- 启动与常驻:
- 直接运行:node app.js(仅测试)
- 生产运行:pm2 start app.js --name “api”(或 pm2 start npm --name “api” – start)
- 设置开机自启:pm2 startup,按提示执行生成的命令;pm2 save。
三 配置 Nginx 反向代理与静态站点
- 安装与启动 Nginx:sudo apt install -y nginx & & sudo systemctl start nginx
- 前端静态站点示例(将构建产物放到 /var/www/myapp):
- sudo nano /etc/nginx/sites-available/default
- 配置片段:
- server { listen 80; server_name your-domain-or-ip; root /var/www/myapp; index index.html; try_files $uri $uri/ =404; }
- 前后端一体或后端 API 反向代理示例(后端运行在 3000 端口):
- server {
listen 80;
server_name your-domain-or-ip;
- location / { proxy_pass http://localhost:3000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection ‘upgrade’; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; }
- 可选:location /api { proxy_pass http://localhost:3000; proxy_http_version 1.1; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; }
- 检查并重载:sudo nginx -t & & sudo systemctl reload nginx
- server {
listen 80;
server_name your-domain-or-ip;
- 防火墙放行:sudo ufw allow ‘Nginx Full’(或 sudo ufw allow 80,443/tcp)。
四 域名与 HTTPS 配置
- 申请并部署 Let’s Encrypt 免费证书(Certbot 自动配置 Nginx):
- sudo apt install -y certbot python3-certbot-nginx
- sudo certbot --nginx -d your-domain.com
- 证书会自动续期;续期测试:sudo certbot renew --dry-run。
五 常见问题与运维命令
- 查看与维护进程:
- 查看状态:pm2 status;日志:pm2 logs;重启:pm2 restart api;停止:pm2 stop api
- 端口与连通性:
- 检查端口占用:ss -tulpen | grep 3000 或 netstat -anp | grep 3000
- 云服务器安全组/防火墙需放行 80/443/22
- Nginx 排错:
- 语法检查:sudo nginx -t;重载:sudo systemctl reload nginx
- 静态资源缓存与路由回退:
- 前端路由(如 React/Vue)需确保 try_files $uri $uri/ /index.html; 正确配置。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ubuntu上js如何配置服务器
本文地址: https://pptw.com/jishu/762561.html
