(六)打包优化 + Nginx 部署完整配置 + 项目收尾
六打包优化 Nginx 部署完整配置 项目收尾前面已经完成业务、布局、权限、mock 切换。本节完成vite 打包优化、dist 产物说明、nginx 配置、部署常见坑、项目目录总览、后续扩展方向。一、vite.config.js 增加打包优化配置修改根目录vite.config.js增加构建分包、压缩配置import { defineConfig, loadEnv } from vite import vue from vitejs/plugin-vue import { viteMockServe } from vite-plugin-mock import path from path // https://vitejs.dev/config/ export default defineConfig(({ mode }) { const env loadEnv(mode, process.cwd()) return { plugins: [ vue(), viteMockServe({ mockPath: src/mock, enable: env.VITE_USE_MOCK true, localEnabled: env.VITE_USE_MOCK true, prodEnabled: false }) ], resolve: { alias: { : path.resolve(__dirname, ./src) } }, server: { port: 5173, open: true, proxy: { /api: { target: http://127.0.0.1:3000, changeOrigin: true, rewrite: path path.replace(/^\/api/, ) } } }, build: { // 打包后资源输出目录默认dist outDir: dist, assetsDir: static, // 小于此阈值的资源转为base64 assetsInlineLimit: 4096, // 分包策略拆分第三方库 rollupOptions: { output: { manualChunks: { vue-vendor: [vue, vue-router, pinia], element-plus: [element-plus] } } } } } })二、环境变量补充说明.env.development只在pnpm dev开发模式生效.env.production只在pnpm build打包生产模式生效.env.production#生产环境mock关闭全部请求后端真实接口 VITE_USE_MOCKfalse #生产后端接口前缀根据你的后端实际地址修改 VITE_API_BASE_URL/api⚠️重要生产环境vite 的 server.proxy 代理不生效代理只存在开发环境。生产环境接口地址两种方案前端写/api交给 Nginx 反向代理转发后端推荐VITE_API_BASE_URL http://后端真实域名/api注意后端要处理跨域三、执行打包pnpm build打包完成根目录生成dist文件夹这个就是最终部署的全部静态文件。本地预览打包产物pnpm preview四、Nginx 部署完整配置重点dist 文件夹上传服务器放到 nginx 网站根目录。nginx.conf 核心配置server { listen 80; server_name 你的域名或者服务器ip; #前端静态资源根目录指向dist文件夹 root /usr/share/nginx/html/admin-dist; index index.html; #解决vue history模式刷新404必须配置 location / { try_files $uri $uri/ /index.html; } #生产接口反向代理把前端 /api 请求转发到后端服务 location /api { proxy_pass http://127.0.0.1:3000; #你的后端服务地址 proxy_set_header Host $host; proxy_set_header X‑Real‑IP $remote_addr; proxy_set_header X‑Forwarded‑For $proxy_add_x_forwarded_for; } #静态资源缓存 location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ { expires 7d; } }部署高频踩坑页面刷新 404try_files $uri $uri/ /index.html;必须写history 模式 vue 必备生产环境接口 404开发环境 proxy 只本地有效生产靠 nginx 的location /api反向代理接口跨域不要前端写全后端域名优先 nginx 代理打包后页面空白检查 vite build 的base如果部署在子目录需要配置base:./如果部署在子目录例如http://xxx/adminvite.config build 下增加base:./五、完整项目目录总览admin‑vue3‑js ├── .env.development #开发环境变量 ├── .env.production #生产环境变量 ├── .gitignore ├── index.html ├── package.json ├── vite.config.js └── src ├── api #接口请求函数 │ └── user.js ├── assets #静态资源 ├── components #公共组件 │ ├── Breadcrumb.vue #面包屑 │ └── TagsView.vue #多标签页 ├── layout #后台外壳布局 │ └── index.vue ├── mock #mock模拟接口 │ └── user.js ├── router #路由 │ └── index.js ├── stores #pinia状态 │ ├── app.js │ └── user.js ├── utils #工具 │ ├── permission.js #权限工具 │ └── request.js #axios封装 ├── views #页面 │ ├── home │ │ └── index.vue │ ├── login │ │ └── index.vue │ └── userManage │ └── index.vue ├── App.vue └── main.js六、项目完整功能汇总pnpm Vite Vue3 JS不使用 TS零基础可上手Element‑Plus 后台管理整套 UIMockJS 本地模拟接口一键切换 mock / 真实后端接口Axios 统一封装请求拦截、响应拦截、token 处理、401 过期跳转登录、错误统一提示Pinia 状态管理用户状态、布局状态侧边栏折叠、标签页Vue‑Router4 history 模式、路由守卫登录、退出登录、token 本地存储Layout 布局侧边栏可折叠、头部、面包屑导航、TagsView 多标签页用户管理模块搜索、分页、新增、编辑、删除、表单校验、弹窗确认自定义指令实现按钮级别权限控制vite 打包优化分包拆分Nginx 完整部署配置解决 history 刷新 404接口反向代理七、开发常用命令速查表pnpm install #安装全部依赖 pnpm dev #启动开发环境可mock pnpm build #打包生产dist pnpm preview #本地预览打包产物八、后续拓展建议可选不再贴大段代码动态路由后端返回菜单 JSON前端动态 addRoute 渲染侧边栏菜单文件上传组件模拟上传 mock对接后端上传接口Excel 导入导出xlsx 库全局 svg 图标封装全局弹窗封装二次确认组件页面缓存 keep‑alive

相关新闻

三十三载守护健康,AI重塑再创未来——三奇医疗成立33周年大会圆满举行

三十三载守护健康,AI重塑再创未来——三奇医疗成立33周年大会圆满举行

1993 — 2026,三十三年,是时间的刻度,更是初心的见证。18日,三奇医疗迎来了33岁生日。这一天,我们相聚在一起,共同回望三十三载风雨兼程的奋斗历程,也共同见证一场面向未来的深刻变革正式启幕。…

2026/8/23 23:35:45 阅读更多 →
Grok Lite突发“疯言疯语”故障,大语言模型故障频发原因何在?

Grok Lite突发“疯言疯语”故障,大语言模型故障频发原因何在?

聊天机器人Grok“疯言疯语”,故障影响网站界面本周,使用Grok Lite的用户遭遇意外状况,这个聊天机器人开始发送长篇大论的胡言乱语,比平时输出情况更糟,引发用户心烦意乱。问题在本周早些时候浮现,多位用户在…

2026/8/23 23:35:45 阅读更多 →
东盟博览会展台设计搭建,不是甩手不是独断,而是配合

东盟博览会展台设计搭建,不是甩手不是独断,而是配合

东盟博览会展台搭建想要顺利落地,既不能全权交由搭建方全权处理,也不建议参展商单方面主观定方案。顺畅的搭建效果在于参展商与搭建方双向协同、分工配合。双方该如何配合呢?1. 设计对接阶段:供需对齐,共同锁定方案参展…

2026/8/23 23:35:45 阅读更多 →

最新新闻

论文AI率过高怎么办?2026年12款免费降AI率工具实测指南

论文AI率过高怎么办?2026年12款免费降AI率工具实测指南

现在毕业论文答辩前,“AI率超标”已经彻底取代“查重率过高”,成了同学们的头号难题!不少同学只是用AI润色了摘要和结论,AI率直接飙升到离谱,纯手动修改根本不管用——这说明AIGC检测系统抓的不是个别词语,…

2026/8/23 23:59:54 阅读更多 →
Marketch:从Sketch画板直接量取CSS

Marketch:从Sketch画板直接量取CSS

Marketch:从Sketch画板直接量取CSS 【免费下载链接】marketch Marketch is a Sketch 3 plug-in for automatically generating html page that can measure and get CSS styles on it. 项目地址: https://gitcode.com/gh_mirrors/ma/marketch 设计稿交付还在…

2026/8/23 23:59:54 阅读更多 →
如何在ThinkPad X390上安装macOS:OpenCore EFI完整指南

如何在ThinkPad X390上安装macOS:OpenCore EFI完整指南

如何在ThinkPad X390上安装macOS:OpenCore EFI完整指南 【免费下载链接】ThinkpadX390-Opencore-EFI macOS Catalina & Big Sur & Monterey on ThinkPad X390 (Hackintosh) 项目地址: https://gitcode.com/gh_mirrors/th/ThinkpadX390-Opencore-EFI …

2026/8/23 23:59:54 阅读更多 →
WechatHook 终极指南:5大核心能力详解,3分钟看懂微信自动化

WechatHook 终极指南:5大核心能力详解,3分钟看懂微信自动化

WechatHook 终极指南:5大核心能力详解,3分钟看懂微信自动化 【免费下载链接】WechatHook Enjoy hooking wechat by Xposed....Accessibility...and so on... 项目地址: https://gitcode.com/gh_mirrors/we/WechatHook WechatHook 是一个基于 Xpos…

2026/8/23 23:59:54 阅读更多 →
OpenModScan:免费跨平台 Modbus 主站调试工具,让现场通讯验证一键搞定

OpenModScan:免费跨平台 Modbus 主站调试工具,让现场通讯验证一键搞定

OpenModScan:免费跨平台 Modbus 主站调试工具,让现场通讯验证一键搞定 【免费下载链接】OpenModScan Open ModScan is a Free Modbus Master (Client) Utility 项目地址: https://gitcode.com/gh_mirrors/op/OpenModScan OpenModScan 是一款开源免…

2026/8/23 23:59:54 阅读更多 →
Gin-JWT认证与授权方案从Token到RBAC权限控制

Gin-JWT认证与授权方案从Token到RBAC权限控制

Gin-JWT认证与授权方案从Token到RBAC权限控制 文章导语 JWT(JSON Web Token)是现代Web服务的身份认证标准。在Gin框架中集成JWT看似简单,但涉及Token刷新、黑名单、多设备登录、RBAC权限控制等实际需求时,就需要更完善的设计。本文…

2026/8/23 23:57:54 阅读更多 →

日新闻

周新闻

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/24 0:06:02 阅读更多 →
SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/24 0:20:20 阅读更多 →
Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/24 0:14:11 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/23 18:47:06 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/23 12:10:44 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/22 3:22:48 阅读更多 →