服务器

使用 Nuxt 的服务器框架构建全栈应用。你可以从数据库或其他服务器获取数据,创建 API,甚至生成静态服务器端内容,如站点地图或 RSS 提要——所有这些都来自单一代码库。

由 Nitro 驱动

服务器引擎Nuxt 的服务器是 Nitro。它最初为 Nuxt 创建,但现在是 UnJS 的一部分,可用于其他框架,甚至可以单独使用。使用 Nitro 为 Nuxt 带来了超能力:
  • 完全控制应用的服务器端部分
  • 在任何提供商上进行通用部署(许多零配置)
  • 混合渲染
Nitro 内部使用 h3,这是一个为高性能和可移植性构建的极简 H(TTP) 框架。

混合渲染

Nitro 有一个强大的功能称为 routeRules,它允许你定义一组规则来定制 Nuxt 应用中每个路由的渲染方式(以及更多)。
nuxt.config.ts
export default defineNuxtConfig({
  routeRules: {
    // 为 SEO 目的在构建时生成
    '/': { prerender: true },
    // 缓存 1 小时
    '/api/*': { cache: { maxAge: 60 * 60 } },
    // 重定向以避免 404
    '/old-page': {
      redirect: { to: '/new-page', statusCode: 302 }
    }
    // ...
  }
})
了解所有可用的路由规则,以定制你的路由渲染模式。
此外,还有一些特定于 Nuxt 的路由规则(例如,ssrappMiddlewarenoScripts),用于在将页面渲染为 HTML 时更改行为。某些路由规则(appMiddlewareredirectprerender)还会影响客户端行为。Nitro 用于构建应用以进行服务器端渲染以及预渲染。
阅读更多 Docs > Guide > Concepts > Rendering.