前端项目与node项目部署记录

nginx部署

  • tar -zxvf 文件.tar.gz 解压压缩文件(张雪v峰)
  • unzip a.zip -d b 解压文件重命名为b 解压zip压缩文件
  • 安装最新的nginx依赖 nginx.org/packages/ce... 这个地址上选择
  • sudo yum install -y nginx.org/packages/ce... 安装官方仓库
  • yum install nginx安装
  • nginx -v 查看版本
  • /etc/nginx/nginx.conf 配置信息
  • sudo nginx -t 检查配置文件是否有问题
  • sudo systemctl restart nginx 重启nginx
  • sudo systemctl reload nginx 重新加载nginx

配置相关信息

  • /var/www/project 打包的项目上传的/var/www文件夹下,也可以上传到/usr/name文件夹下
  • 下面是server配置相关
bash 复制代码
    server {
		listen 8080;
	  listen [::]:8080;
    server_name _;
    
    
		root /var/www/omp; 
		index index.html;

		location / {
        try_files $uri $uri/ /index.html;
    }
     error_page 404 /404.html;
          location = /40x.html {
      }

      error_page 500 502 503 504 /50x.html;
          location = /50x.html {
      }
}

也可以在/etc/nginx/conf.d配置对应项目的配置文件

js 复制代码
server{
  listen 8080; //端口
  server_name _; // 配置域名 _会匹配所有的域名或IP地址
  
  root /var/www/vite/dist;
  index index.html;
  
  location / {
    try_files $uri $uri/ /index.html; //这个很重要找不到网页返回这个地址
  }
}
  • 也可以在/etc/nginx/conf.d目录下分别配置各个项目的nginx,因为在/etc/nginx/nginx.conf下面配置的已经有加载conf.d目录下的所有文件
js 复制代码
    include /etc/nginx/conf.d/*.conf;

安装node

后端部署

  • 上传整个后端的项目,不要node_modules文件和dist文件夹
  • 上传到服务器
  • npm i 安装依赖
  • npm run build 打包
  • npm i pm2 -g 全局安装pm2用来管理后台项目的运行

pm2 start "cross-env NODE_ENV=PRODUCTION node dist/main.js" --name nest 运行项目

pm2 list 查看项目列表

pm2 delete nest 删除nest的后台运行

pm2 logs nest 查看nest项目的日志

  • 配置前端项目转发到后台
js 复制代码
server{
  listen 8080;
  server_name _;
  
  root /var/www/vite/dist;
  index index.html;
  
  client_max_body_size 20M; //设置上传请求体的最大限制
  
  location / {
    try_files $uri $uri/ /index.html;
  }
  
 location /api {
      proxy_pass http://localhost:5000/api;  # 代理到后端服务
      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;
  }
}

scp命令

js 复制代码
scp ./hand_written.zip root@189.1.238.155:/var/www/ 将这个压缩包上传到/var/www/目录下

scp -r ./hand_written root@189.1.238.155:/var/www/ 将hand_written目录下所有内容上传到服务器/var/www/hand_written 目录下,前提是服务器上hand_written目录已经存在

linux常用命令

bash 复制代码
tar -zxvf 文件.tar.gz 解压压缩文件(张雪v峰)
unzip a.zip -d b 解压文件重命名为b 解压zip压缩文件
rm -rf 目录名 递归删除目录以及目录下所有文件
mkdir 目录名 创建目录
mv <原文件路径> <新文件路径> 文件重命名
mv <文件路径> <目标目录> 移动文件
相关推荐
lichenyang4537 小时前
Docker 学习笔记(一):为什么需要镜像、容器和仓库?
前端
kyriewen8 小时前
别再对着 TypeScript 报错发呆了:我把 10 个最常见的红色波浪线翻译成了人话
前端·javascript·typescript
IT_陈寒8 小时前
SpringBoot自动配置的坑,我的API突然就404了
前端·人工智能·后端
奇奇怪怪的9 小时前
Embedding 模型 10+ 横向评测
前端
陈广亮9 小时前
Monorepo 从 0 到 1 实操指南 2026 版:pnpm catalogs + Turborepo 2.x + changesets 全链路
前端
子兮曰9 小时前
OpenMontage 深度解剖:你的 AI 编程助手,其实是个视频工作室
前端·后端·ai编程
敲代码的鱼9 小时前
PDF 预览与签名批注写回 支持安卓 iOS 鸿蒙 UTS插件
android·前端·ios
子兮曰9 小时前
前端工具链的「Rust 化」:一场没有赢家的军备竞赛?
前端·后端·rust
Hyyy10 小时前
Function Calling / Tool Use的原理和实现模式
前端·llm·ai编程