你可能会说:
- “页面内容每个人看到的都不一样,又想让搜索引擎看到,怎么办?”
- “Next.js 说它能在服务器上渲染,这和普通网站有什么不同?”
它是什么
服务端渲染和静态生成一样,发给浏览器的都是完整 HTML;区别在于生成的时机:静态生成在构建时做一次,服务端渲染在每次请求时做。
所以它能处理"每个人看到的不一样"和"内容时刻在变"的页面,比如个人主页、实时库存。代价是必须一直运行一台服务器,每个请求都要计算,成本和出故障的机会都更高。
很多框架支持混着用:大部分页面静态生成,少数动态页面服务端渲染。
打个比方
点单后现炒:永远是热的,还能按客人口味调;但厨房必须一直有人,每一单都要花时间。
在这个网站里
本站没有用服务端渲染:内容不因人而异,静态生成就够了。需要实时回答的 AI 导师是一个单独的后端接口,而不是把整个网站改成服务端渲染。
容易搞混的地方
常见误解
服务端渲染一定比静态生成高级
正确理解
内容不因人而异时,静态生成更快、更便宜、更少出错;服务端渲染是为动态内容付出的代价。
你可以这样告诉 AI
复制下面这段,贴给你的 AI
只有需要实时数据或因人而异的页面用服务端渲染,其余页面静态生成;请列出每个页面属于哪一种,以及为什么。
接下来去哪
对比着看
在这些课里出现