前端项目与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 <文件路径> <目标目录> 移动文件
相关推荐
Penge66636 分钟前
前端基础:html语义化
前端
用户30816998764851 小时前
同一个端口能被两个程序监听吗?TCP 11 组绑定实测
前端
deli0071 小时前
红绿灯配时实测:固定 60 秒 vs 自适应,2400 辆车差多少
前端
去伪存真1 小时前
井道无信号、满手黑机油,我们如何用 DeepSeek V4 打造不“犯浑”的电梯维保 Agent?
前端·agent
deli0071 小时前
60fps 为什么还是一顿一顿?帧时间曲线实测给你看
前端
时间的情敌1 小时前
Cesium 流动管线、管道动画、管线流向仿真,管网、油气、水利孪生高频需求
前端·交互·cesium
wangxiaoxuan2173 小时前
SLAM 的基本结构:前端、后端、回环与地图优化
前端·机器人·科沃斯八界
Agent世界6 小时前
用 CDP 做发布自动化:四道机器闸门与产物验收
前端·javascript
FungLeo6 小时前
成为全栈·Vue 管理后台篇·编辑器图片上传:从文件选择到文章附件关联
前端·vue.js·编辑器·markdown·文件上传·formdata·附件管理
某哈压力大6 小时前
SSH 突然 Connection reset?不是密钥坏了,是 OpenSSL 把 sshd 干趴了
前端·node.js·命令行