常规

预设、日志记录和运行时配置的核心选项。

Note

本页所有示例都假设已在 nitro.config.ts 中导入以下内容:

import { defineConfig } from "nitro";

#preset

生产环境使用的部署预设。也可以通过 NITRO_PRESET 环境变量设置。

开发模式始终使用 nitro_dev 预设。生产环境默认使用 node_server,它会构建独立的 Node.js 服务器。

未设置 preset 选项且 Nitro 运行在已知环境中时,会自动检测预设。

export default defineConfig({
  preset: "cloudflare_pages", // deploy to Cloudflare Pages
});

#defaultPreset

自定义回退预设:未设置 preset 且未自动检测到任何已知托管平台时使用该预设。

默认情况下,Nitro 会回退到基于运行时的预设(node,以及在 Deno 或 Bun 上运行时使用的 deno 或 bun)。显式设置的 preset、NITRO_PRESET 环境变量以及自动检测到的平台(Vercel、Netlify、Cloudflare Pages 等)都优先于 defaultPreset。

该选项接受预设名称或内联预设定义。

export default defineConfig({
  defaultPreset: "node_cluster", // use node_cluster instead of node_server by default
});

#debug

  • 默认值:false(设置 DEBUG 环境变量时为 true)

启用调试模式,输出详细日志和额外的开发信息。

export default defineConfig({
  debug: true,
});

#logLevel

  • 默认值:3(检测到测试环境时为 1)

日志详细程度。更多信息请参阅 consola。

export default defineConfig({
  logLevel: 4, // verbose logging
});

#logging

  • 默认值:{ compressedSizes: true, buildSuccess: true }

控制构建日志行为。将 compressedSizes 设为 false 可跳过压缩后包体积的报告;将 buildSuccess 设为 false 可隐藏构建成功消息。

export default defineConfig({
  logging: {
    compressedSizes: false, // skip compressed size reporting
    buildSuccess: false,
  },
});

#runtimeConfig

  • 默认值:{ app: {}, nitro: {} }

服务器运行时配置。Nitro 会将 app.baseURL(来自 baseURL 选项)注入 app 命名空间。

注意: app 和 nitro 命名空间保留供内部使用。

export default defineConfig({
  runtimeConfig: {
    apiSecret: "default-secret", // override with NITRO_API_SECRET
  },
});

#compatibilityDate

  • 默认行为:未提供时为 "latest"

部署平台会引入 Nitro 预设可以使用的新功能,其中一些需要显式启用。请将此项设为你已完成测试的最新日期,格式为 YYYY-MM-DD,以启用预设的最新功能。

export default defineConfig({
  compatibilityDate: "2025-01-01",
});

#static

  • 默认值:false

启用静态站点生成模式。

export default defineConfig({
  static: true, // prerender all routes
});