vue前端项目上线配置
1.准备云服务器
- 建议使用阿里云、腾讯云、华为云、百度云
- 自行官网购买或新人免费体验
2. 工具安装
- xShell(远程连接工具)
- 新建会话
- 主机:服务器公网IP,验证用户、密码
- 完成连接
- xFTP(文件传输工具)
3. 服务器nodejs安装
- 在nodejs官网(https://nodejs.org/en/)找到对应版本,复制下载路径
- 在xShell远程控制台输入:
# mkdir /data/tools // 新建文件目录,保存安装包
# cd /data/tools // 打开目录
# wget 下载路径 // 下载安装包,wget命令根据url下载文件
# ls // ls命令查看目录下文件,查看是否下载成功
# xz -d node-v16.14.2-linux-x64.tar.xz //解压xz
# tar xf node-v16.14.2-linux-x64.tar // 解压tar
# mv node-v16.14.2-linux-x64 /usr/local/node // 移动到/usr/local/node,nodejs的存放目录,用于配置环境变量
- 配置环境变量
# vi /etc/profile // 编辑profile文件,vi是编辑器,按 i 进去插入状态,在最后插入环境变量配置,按ESC退出插入状态,输入 :wq 保存并退出vi编辑器
# source /etc/profile // 更新文件
环境变量配置
export NODE_HOME=/usr/local/node // 新建一个环境变量NODEJS,值为nodejs解压后的存放目录
export PATH=$PATH:$NODE_HOME/bin // 建立路径
- 验证成功
# node -v // 查看版本号
# npm -v // 有版本号就成功了
- 安装nrm:npm源管理器,快速切换源地址
# npm i -g nrm // 全局安装nrm
# nrm -V // 查看安装成功
# nrm ls // 查看所有镜像源地址
npm ---------- https://registry.npmjs.org/
yarn --------- https://registry.yarnpkg.com/
tencent ------ https://mirrors.cloud.tencent.com/npm/
cnpm --------- https://r.cnpmjs.org/
taobao ------- https://registry.npmmirror.com/
npmMirror ---- https://skimdb.npmjs.com/registry/
# nrm test // 测试地址的延迟
* npm ------ 726ms
yarn ----- 1188ms
tencent -- 970ms
cnpm ----- 1151ms
taobao --- 311ms
npmMirror - 4912ms
# nrm use taobao // 使用延迟较小的taobao镜像源
Registry has been set to: https://registry.npmmirror.com/
4.部署nodejs后端
- 新建项目存放地址
# cd /usr/local
# mkdir serve // 在/usr/local下新建serve文件夹,用来存放后端项目文件
- 文件传输
- 将项目打包(不要打包node_modules文件夹,将其与文件全部打包)
- 利用xFTP将压缩包传输到/usr/local/serve
- 解压文件
# ls
NeteaseCloudMusicApi.zip
# unzip NeteaseCloudMusicApi.zip
- 安装依赖
# npm i
- 启动服务
# node app.js
- 全局安装pm2
# npm -g pm2
# pm2 start // 启动服务
# PM2 list // 查看服务列表
# PM2 delete id // 断开服务
5.安装nginx
- 安装所需插件
- gcc (安装前查看有没有:gcc -v)
# yum -y install gcc
- pcre、pcre-devel ((安装前查看有没有)
# yum -y install pcre pcre-devel
- zlib
# yum install -y zlib zlib-devel
- openssl
# yum install -y openssl openssl-devel
- 下载nginx
# wget https://nginx.org/download/nginx-1.20.2.tar.gz
- 安装
# cd /usr/local
# mkdir nginx
# cd nginx
# tar -zxvf nginx-1.20.2.tar.gz
#ls
conf html logs nginx-1.20.2 nginx-1.20.2.tar.gz sbin
- 激活
# cd nginx-1.20.2
# ./configure
# make
# make install
- 启动
# cd /usr/local/nginx/sbin
# ./nginx
- 修改配置文件
# cd /usr/local/nginx/conf
# vi nginx.conf
6.部署vue前端
- 打包前端项目,生成dist文件夹,打包dist文件夹为dist.zip
- 创建根目录
# cd /usr/local/nginx
# mkdir rootfile
- 修改nginx的配置文件,将root路径设置为我们自己创建的根路径,http端口默认为80
# vi /usr/local/nginx/conf/nginx.conf
- 将dist.zip利用xFTP上传到创建的根目录,并解压
7. 可能遇到的问题
- 访问失败:后端启动的接口没有在云服务器开启
- nginx服务开启不了:80端口被占用
已上线项目分享
- 前端
- github:https://github.com/LLtaishuai/cloudmusic.git
- 后端
- github:https://github.com/Binaryify/NeteaseCloudMusicApi.git
- 线上地址
- IP: http://101.35.207.17