前端项目与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 <文件路径> <目标目录> 移动文件
相关推荐
killerbasd10 小时前
牧苏苏传 我不装了 4/7
前端·javascript·vue.js
吴声子夜歌11 小时前
ES6——二进制数组详解
前端·ecmascript·es6
码事漫谈11 小时前
手把手带你部署本地模型,让你Token自由(小白专属)
前端·后端
ZC跨境爬虫11 小时前
【爬虫实战对比】Requests vs Scrapy 笔趣阁小说爬虫,从单线程到高效并发的全方位升级
前端·爬虫·scrapy·html
爱上好庆祝11 小时前
svg图片
前端·css·学习·html·css3
王夏奇12 小时前
python中的__all__ 具体用法
java·前端·python
大家的林语冰12 小时前
《前端周刊》尤大开源 Vite+ 全家桶,前端工业革命启动;尤大爆料 Void 云服务新产品,Vite 进军全栈开发;ECMA 源码映射规范......
前端·javascript·vue.js
jiayong2313 小时前
第 8 课:开始引入组合式函数
前端·javascript·学习
田八13 小时前
聊聊AI的发展史,AI的爆发并不是偶然
前端·人工智能·程序员
zhanghongbin0113 小时前
AI 采集器:Claude Code、OpenAI、LiteLLM 监控
java·前端·人工智能