routeRules (config)

Configures per-route rendering, caching, redirects, and headers (hybrid rendering).

Since Nuxt 3.0 Spec ↗

Syntax

routeRules: { '<glob>': { ssr, prerender, isr, swr, redirect, headers, cors } }

Parameters

NameTypeRequiredDescription
routeRules Record<string, NitroRouteConfig> No Map of route glob patterns to behavior: `prerender`, `isr`, `swr`, `ssr`, `redirect`, `headers`, `cache`, `cors`, `proxy`.

Returns

NuxtConfig — Applied by Nitro per matched route.

Examples

export default defineNuxtConfig({
  routeRules: {
    '/': { prerender: true },
    '/blog/**': { isr: 3600 },
    '/admin/**': { ssr: true },
    '/old-page': { redirect: '/new-page' },
    '/api/**': { cors: true },
  },
})
export default defineNuxtConfig({
  routeRules: {
    '/spa/**': { ssr: false },
    '/feed': { swr: 60 },
    '/secure': { headers: { 'X-Frame-Options': 'DENY' } },
  },
})

Notes

Enables hybrid rendering: mix static (`prerender`), ISR (`isr`), stale-while-revalidate (`swr`), SSR, and SPA (`ssr: false`) per route. Patterns use glob matching; more specific rules take precedence. Powered by Nitro, so behavior depends on the deployment preset.

See also