前端项目与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 <文件路径> <目标目录> 移动文件
相关推荐
benbenAItalk41 分钟前
数字人口播视频的批量生产实践:素材规范、任务编排与质量验收
java·前端·音视频
2601_962885721 小时前
如何用 Python 扫描 A 股跳空缺口并统计缺口回补概率?
java·前端·python
西瓜太郎12341 小时前
Claude Code、Codex CLI、Gemini CLI 能否共用一枚 Key?先看协议选择矩阵
前端·api 网关·claude code·gemini cli·codex cli
陈随易3 小时前
在Finch用了62亿词元,我认为这是新一代Agent工具之神
前端·人工智能·后端
水域安全老周4 小时前
水趣钓鱼救生衣专利拆解:两级锁紧如何解决落水人衣分离
java·前端·网络
计算机魔术师4 小时前
Anthropic CEO突然喊踩刹车,OpenAI罕见力挺:AI这辆车不能只踩油门了
前端
wing985 小时前
从codex转战workbuddy使用一周的感受
前端·人工智能·后端
EatFan5 小时前
Java接入支付宝 JSAPI 支付保姆教程(二):流程讲解与前后端代码讲解
前端·spring boot·后端·微信小程序·小程序·uni-app
梦想平凡5 小时前
百游棋牌源代码开发搭建教程(五):房间创建、座位分配与请求幂等实现
前端·javascript·数据库·源代码管理
IT_陈寒6 小时前
Redis的Set操作居然能把我的服务整挂了?
前端·人工智能·后端