前端部署
EasyFly-Ads 管理后台基于 Vue 3 + Vite 构建,输出纯静态文件,部署灵活简便。本章涵盖构建、部署及 Nginx 配置。
构建项目
环境要求
| 工具 | 版本要求 |
|---|---|
| Node.js | 18.x 或以上 |
| pnpm | 8.x 或以上(推荐) |
拉取代码
bash
git clone <仓库地址> easyfly-admin
cd easyfly-admin安装依赖
bash
pnpm install环境配置
创建环境变量文件 .env.production:
env
# API 接口地址
VITE_API_BASE_URL=https://api.yourdomain.com
# 静态资源CDN(可选)
VITE_CDN_URL=https://cdn.yourdomain.com
# 站点标题
VITE_APP_TITLE=易起飞广告管理后台构建
bash
pnpm build构建产物默认位于 dist/ 目录,包括:
index.html—— 入口文件assets/—— JS、CSS、图片等静态资源
Nginx 部署
安装 Nginx
bash
# CentOS
sudo yum install -y nginx
# Ubuntu
sudo apt install -y nginx配置虚拟主机
编辑 /etc/nginx/conf.d/easyfly.conf:
nginx
server {
listen 80;
server_name admin.yourdomain.com;
# 静态文件目录
root /data/www/easyfly-admin;
index index.html;
# Gzip 压缩
gzip on;
gzip_min_length 1k;
gzip_types text/plain text/css text/javascript application/json application/javascript image/svg+xml;
# SPA 路由支持
location / {
try_files $uri $uri/ /index.html;
}
# API 反向代理
location /api/ {
proxy_pass http://127.0.0.1:8080/;
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;
}
# 静态资源缓存
location /assets/ {
expires 30d;
add_header Cache-Control "public, immutable";
}
}上传文件
bash
# 创建目录
sudo mkdir -p /data/www/easyfly-admin
# 上传构建产物
scp -r dist/* deploy@your-server:/data/www/easyfly-admin/
# 设置权限
sudo chown -R nginx:nginx /data/www/easyfly-admin启动服务
bash
# 测试配置
sudo nginx -t
# 启动 Nginx
sudo systemctl start nginx
sudo systemctl enable nginxHTTPS 配置(推荐)
使用 Let's Encrypt 免费证书,通过 Certbot 工具自动获取和续期:
bash
# 安装 Certbot
sudo yum install -y certbot python3-certbot-nginx # CentOS
sudo apt install -y certbot python3-certbot-nginx # Ubuntu
# 获取证书
sudo certbot --nginx -d admin.yourdomain.com
# 自动续期
sudo certbot renew --dry-runDocker 部署(可选)
dockerfile
FROM nginx:alpine
COPY dist/ /usr/share/nginx/html/
COPY nginx.conf /etc/nginx/conf.d/default.conf
EXPOSE 80bash
docker build -t easyfly-admin .
docker run -d --name easyfly-admin -p 80:80 easyfly-adminCDN 加速(推荐)
将构建后的 assets/ 目录上传至对象存储(阿里云 OSS / 腾讯云 COS),配合 CDN 加速静态资源加载:
- 上传
dist/assets/至 OSS - 设置 CDN 域名并配置 CNAME
- 修改构建配置中的
VITE_CDN_URL
部署验证
部署完成后检查:
- [ ] 域名访问正常,页面加载完整
- [ ] API 接口调用正常(检查登录功能)
- [ ] HTTPS 证书有效
- [ ] 浏览器控制台无报错
- [ ] 移动端适配正常