现代前端最后一站:选对上线方式,把它送上服务器
一个 Next 项目,
上线有两条路
先把这两种讲清楚,再选定一种照着干。
.next/ 为什么不能直接交给 Nginx?next start 那台服务"use client")GET /。
2服务器按 A 的身份,在卡片内部组织好该给他的内容。
3把这一版页面,现场渲染成 HTML。
4顺着连线,把 A 的专属 HTML 返回浏览器。
output: "export"
告诉 Next:我每一页 build 时都能画死,别给我留服务了,直接打包成一个干净的静态 out/ 文件夹。
out/.html,交给 Nginx 转发,服务器上不用常驻任何东西。
"内容是动态的"
≠ "必须走 A"
登录注册、读数据库、实时数值——绝大多数都是"静态前端 + 后端 API"做的,照样走 B。
out/html / css / js。
3页面加载后,浏览器再向后端 API 请求数据。
4API 返回数据,浏览器把它填进页面。
dist/ → out/output: "export"。root 指向 out/ + 一句 try_filesroot 指向 out/,再加一句 try_filesdist)out)
try_files:先按 URL 找文件,找不到就自动补 .html 再找——/text-lab 就命中了 out/text-lab.html,不再 404。
output: "export" 导成 out/,Nginx 直接把静态资源发给浏览器。比自动化更有价值的,是你心里有这条链路:源码在哪、产物在哪、谁 build、谁服务。
app/api/...,前后端一把抓。out/ · 走 B新技术好用,但"够不够稳"得自己掂量。我们这门课,到"纯静态 out/ + 后端 API"为止——这已是行业主流,足够做出可靠的真东西。
下一模块,
让后端登场
把 data/site.js 里的硬编码、那个"开始分析"按钮,换成真正的接口。