Capítulo 208 de 456
deploymentId sets an identifier for a deployment used for version-skew protection and cache busting during rolling deployments, ensuring clients only load assets/Server Functions from a consistent version.
deploymentId: string config option in next.config.js; also settable via NEXT_DEPLOYMENT_ID env var (config value takes precedence if both set).?dpl=<deploymentId> to JS/CSS/image URLs.x-deployment-id to client nav requests, x-nextjs-deployment-id to nav responses, data-dpl-id attribute on <html>.deploymentId is included in the 'use cache' cache key, invalidating entries when it changes.module.exports = {
deploymentId: 'my-deployment-id',
}
NEXT_DEPLOYMENT_ID=my-deployment-id next build
module.exports = {
deploymentId: process.env.DEPLOYMENT_VERSION || process.env.GIT_SHA,
}
| Version | Changes |
|---|---|
| v16.2.0 | Pages Router detecta skew pelo header de resposta em vez do build ID; build ID fica constante quando deploymentId está setado. |
| v14.1.4 | deploymentId estabilizado como opção top-level. |
| v13.4.10 | experimental.deploymentId introduzido. |
?dpl= faça roteamento: Next.js não lê esse parâmetro nas requisições, ele é só pra cache busting; roteamento por deployment precisa vir do host/CDN.deploymentId consistente: instâncias diferentes podem servir mix de assets antigos/novos e causar erros.deploymentId.use cache: mudar o deploymentId invalida entradas de cache automaticamente.deploymentId está setado, o build ID vira constante e generateBuildId perde efeito.