Deng
Deng
宝塔面板nodejs+vue+mysql前后分离项目部署上线 | odjBlog
    欢迎来到odjBlog的博客!

宝塔面板nodejs+vue+mysql前后分离项目部署上线

技术总结及问题解决 odjbin 3年前 (2022-08-30) 41次浏览 0个评论

准备

  • 服务器
  • 域名
  • vue+nodejs 项目
  • mysql 5.6
  • PM2 管理器 5.2

安装宝塔面板,及安装推荐配置

部署项目

新建数据库

  • 将后端项目的数据库相关信息改为线上,并用 navicat 将数据导入

前端

  • ①宝塔面板->网站->添加站点

  • ②上传前,如在 vue.config.js 配置了跨域代理,则将其注释

  • ④然后将前端项目用 npm run build 打包,再将 dist 目录上传到站点的文件目录里,解压。

  • ⑤新建的站点,点击设置配置文件,配置 nginx 反向代理
    location /api {
      # 后端地址
      proxy_pass http://域名:后端接口/;
      proxy_set_header X-Forwarded-For    $proxy_add_x_forwarded_for;              
      proxy_set_header X-Forwarded-Proto $scheme;              
      proxy_set_header X-Forwarded-Port $server_port;   
      #如果在 location /api 设置前缀,则后端地址没有固定前缀,则需用 rewrite 去除 URL 中的特定参数
      rewrite /api/(.*)$ /$1 break;
    }
  • 注意:前端的 baseURL 也需要进行对应修改,与上面配置保持一致,实现跨域。

  • ⑥配置伪静态
    location / {
      root 前端目录;
      index index.html;
      try_files $uri $uri/ /index.html;
    }

后端

  • ①打包上传到相应后端文件夹,解压
  • 注意:如果没有连 node_modules 一起打包,则去后端文件夹,终端 npm install

  • ②宝塔面板->软件商店->打开 PM2 管理器->设置->添加项目

  • ③设置相应端口,重启

运行网站则上线部署完成

喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
已稳定运行:3年255天3小时50分