
General
Next.js corrige dos RCE críticas: actualiza a 16.3.3 o 15.5.24
Next.js 16.3.3 y 15.5.24 corrigen dos RCE críticas en servidores Windows y optimización AVIF. Revisa el impacto y actualiza producción de forma segura.
Leer más7 min de lectura

3/9/2026 ·Mizael Segovia· 10 min de lectura ·
38 visualizaciones
Nuestro equipo está listo para ayudarte con cualquier duda o problema que tengas.
ContáctenosAstro 7.3.1 ya está disponible y conviene fijarse en el número completo: Astro publicó la versión 7.3.0 el 3 de septiembre de 2026 y, unas horas después, lanzó 7.3.1 para corregir un fallo que impedía iniciar o compilar proyectos que usan astro:assets. Si vas a actualizar hoy, la recomendación práctica es instalar 7.3.1 o una versión posterior, no quedarse en 7.3.0.
La actualización no cambia la forma de escribir una página Astro. Su valor está en el flujo de trabajo: mejora los builds de sitios con muchas páginas y muchos módulos, permite renderizado concurrente en los builds incrementales —también con el adaptador de Cloudflare—, facilita pruebas E2E con varias instancias de astro preview y corrige problemas concretos de caché, i18n y Server Islands.
Para comprobar si la mejora se nota fuera del changelog, en TERAMONT ejecutamos dos pruebas locales reproducibles. En nuestra carga sintética, Astro 7.3.1 redujo la mediana de un build limpio de 1,200 módulos de 4.55 a 3.31 segundos, un 27.3%. En un rebuild incremental sin cambios de 3,000 rutas con cacheKey, pasó de 1.62 a 0.85 segundos, un 47.5%. Son resultados de esta máquina y esta carga, no una promesa universal; más adelante explicamos exactamente cómo los medimos.
| Cambio | Qué resuelve | A quién le importa |
|---|---|---|
| Builds con muchos módulos | Reduce trabajo durante la compilación de sitios con muchas páginas procedentes de módulos distintos. | Documentación, portales, blogs grandes y catálogos estáticos. |
| Incremental build concurrente | La caché ya no se desactiva cuando build.concurrency es mayor que 1. | Equipos con muchos prerenders y pipelines de CI/CD. |
| Mejoras para Cloudflare | Añade concurrencia al build incremental con @astrojs/cloudflare y reduce serialización de páginas prerenderizadas grandes. | Proyectos desplegados en Cloudflare. |
astro preview --ignore-lock | Permite levantar varias previews en puertos distintos. | Suites E2E, Playwright y ejecución paralela. |
| Logger unificado | Servicios de imágenes, proveedores de caché y más mensajes internos respetan el logger configurado. | Equipos con logs estructurados u observabilidad propia. |
| Correcciones de caché, i18n y Server Islands | Evita respuestas inseguras en caché y corrige recursos o rutas que podían generarse mal. | Sitios dinámicos, multilingües y con Content Collections. |
Astro 7.2 introdujo los builds estáticos incrementales como función experimental. La idea es sencilla: si una ruta prerenderizada conserva el mismo código y los mismos datos, Astro puede reutilizar el resultado anterior en vez de volver a generar el HTML. Esto es especialmente útil en sitios donde una colección produce miles de páginas pero una publicación sólo modifica unas pocas.
En 7.2 había una limitación importante: configurar build.concurrency por encima de 1 desactivaba la caché incremental. Era posible conservar la caché fijando la concurrencia en 1, pero se perdía paralelismo durante el renderizado. Astro 7.3 elimina ese intercambio: el build incremental admite renderizado concurrente y el equipo indica expresamente que el cambio incluye @astrojs/cloudflare.
Esto no significa que concurrency: 8 siempre sea mejor. El punto óptimo depende de núcleos disponibles, memoria, coste de cada ruta y límites del entorno de CI. La mejora es que ahora puedes medir y elegir sin renunciar automáticamente a la caché incremental.

Mediana de cinco ejecuciones por escenario. Un tiempo menor es mejor.
| Escenario | Astro 7.2.10 | Astro 7.3.1 | Diferencia |
|---|---|---|---|
| Build limpio, 1,200 páginas desde 1,200 módulos | 4.55 s | 3.31 s | 27.3% más rápido |
Rebuild sin cambios, 3,000 rutas con cacheKey | 1.62 s | 0.85 s | 47.5% más rápido |
| Memoria máxima mediana, rebuild incremental | 449,512 KB | 410,544 KB | 8.7% menos en esta prueba |
Hardware: Intel Core i5-13450HX, 10 núcleos y 16 hilos, con 30 GiB de RAM.
Software: Ubuntu Linux, Node.js 22.18.0 y npm 10.9.3.
Build limpio: 1,200 archivos .astro independientes, un componente compartido, build.concurrency: 8 y eliminación de dist y node_modules/.astro antes de cada medición.
Build incremental: una ruta dinámica generó 3,000 páginas con un cacheKey estable. Después del build inicial se eliminó sólo dist, conservando la caché en node_modules/.astro.
Muestra: cinco ejecuciones medidas con tiempo de pared y memoria máxima; la tabla usa la mediana para reducir el efecto de valores atípicos.
La carga es sintética: no incluye un CMS remoto, optimización masiva de imágenes ni plugins específicos. Por eso el porcentaje no debe extrapolarse directamente a otro proyecto. Lo que sí demuestra es que el cambio descrito por Astro aparece en un entorno controlado y repetible. En un sitio real conviene ejecutar el mismo commit con ambas versiones, limpiar o conservar la caché según el escenario y comparar medianas, no una sola ejecución.
Como contexto, el equipo de Astro publicó para Astro 7.0 mejoras de build del 15% al 61% en seis sitios reales de entre unas 308 y 13,275 páginas. Esas cifras miden el salto general a Astro 7 —Rust, Vite 8, Rolldown y el nuevo renderizado— y no deben atribuirse únicamente a 7.3. Nuestro benchmark anterior sí compara 7.2.10 y 7.3.1 de forma directa.
La función sigue marcada como experimental. Se activa en la configuración y cada ruta que quiera reutilizarse debe devolver una clave de caché. Astro combina esa clave de datos con un hash del grafo de módulos de la ruta; si cambia el contenido o el código que la produce, vuelve a renderizarla.
// astro.config.mjs
import { defineConfig } from 'astro/config';
export default defineConfig({
build: {
concurrency: 8,
},
experimental: {
incrementalBuild: true,
},
});
En una Content Collection, entry.digest es una clave útil porque cambia cuando cambia la entrada:
Ejecuta Astro SSR, automatiza builds y configura tu propio reverse proxy, caché y observabilidad en un VPS de TERAMONT.


// src/pages/blog/[slug].astro
import { getCollection, render } from 'astro:content';
export async function getStaticPaths() {
const posts = await getCollection('blog');
return posts.map((post) => ({
params: { slug: post.id },
props: { post },
cacheKey: post.digest,
}));
}
const { post } = Astro.props;
const { Content } = await render(post);
Una clave incorrecta puede servir HTML obsoleto. Incluye en ella todo dato externo que afecte la salida: versión del contenido, idioma, variante o fecha de actualización. Las rutas sin cacheKey se renderizan siempre, de modo que la adopción es explícita.
Astro 7.3 añade renderizado concurrente para experimental.incrementalBuild incluso al usar @astrojs/cloudflare. Además, el changelog menciona menos sobrecarga de serialización en páginas prerenderizadas grandes. En la práctica hay dos beneficios potenciales:
un pipeline con varios núcleos puede renderizar más de una página a la vez sin apagar la caché incremental;
las páginas grandes necesitan menos trabajo de serialización dentro de la integración de Cloudflare.
Si fijaste build.concurrency: 1 únicamente como solución temporal para conservar la caché en 7.2, Astro indica que ya puedes retirar ese workaround. Hazlo primero en una rama y mide memoria y duración total: aumentar concurrencia puede acelerar el build, pero también elevar el consumo instantáneo de RAM.
La nueva opción --ignore-lock permite iniciar varias instancias de astro preview en puertos distintos. Resulta útil cuando Playwright u otro runner levanta entornos aislados en paralelo.
npm run build
npx astro preview --port 4321
npx astro preview --port 4322 --ignore-lock
El flag evita el bloqueo entre previews; no asigna los puertos por ti ni sustituye el aislamiento de datos. Cada proceso debe recibir un puerto libre y, si la aplicación usa servicios externos, variables o bases separadas cuando corresponda.
El proveedor memoryCache() ahora omite respuestas con Vary: Cookie o Vary: *. Es una corrección prudente: una respuesta cuyo contenido varía según cookies no debe reutilizarse indiscriminadamente entre usuarios, y Vary: * señala que no hay una clave de caché HTTP práctica para reproducir la selección.
Astro 7.3 también entrega el logger de runtime a los hooks de servicios de imágenes y al contexto de proveedores de caché. Los mensajes respetan el destino y nivel configurados, en lugar de escribir directamente en consola. Para equipos que envían logs a Loki, CloudWatch, Kibana o un colector propio, esto reduce mensajes fuera del pipeline.
Dos arreglos merecen atención aunque no aparezcan en el titular:
Rutas fallback de i18n: Astro podía reemplazar por error una segunda aparición del código de idioma. El ejemplo oficial es /en/enterprise con fallback a español, que podía convertirse en /es/esterprise. Ahora sólo se modifica el segmento inicial del locale.
Content Collections dentro de Server Islands: se corrige la pérdida de estilos, enlaces y scripts asociados a entradas renderizadas dentro de una isla de servidor.
Si tu sitio es multilingüe o mezcla Content Collections con Server Islands, estos fixes pueden ser una razón más fuerte para actualizar que el rendimiento.
Antes de cambiar producción, confirma que tu proyecto ya está en Astro 7. Para el panorama completo de la versión mayor, consulta nuestra guía de Astro 7 y migración.
git checkout -b upgrade/astro-7-3-1
npx @astrojs/upgrade
npm run build
npm run preview
Después verifica:
que el lockfile instaló 7.3.1 o una versión posterior, no 7.3.0;
imágenes locales y remotas que pasen por astro:assets;
rutas fallback en todos los idiomas;
páginas de Content Collections dentro de Server Islands;
un build con caché limpia y otro conservando node_modules/.astro;
memoria máxima del job antes de aumentar la concurrencia;
pruebas E2E y rollback del despliegue.
| Tu caso | Recomendación |
|---|---|
| Estás en 7.3.0 | Actualiza a 7.3.1 cuanto antes si usas astro:assets; aun sin usarlo, evita mantener una versión con un fallo conocido. |
| Estás en 7.2 y tienes miles de páginas | Vale la pena probar 7.3.1 en CI y comparar build limpio e incremental. |
| Usas Cloudflare y fijaste concurrencia en 1 | Prueba retirar el workaround, sube la concurrencia gradualmente y vigila RAM. |
| Tu sitio es pequeño y estable | La urgencia es menor, pero 7.3.1 reúne fixes útiles; actualiza con el ciclo normal de pruebas. |
| Sigues en Astro 6 | No saltes a ciegas: revisa primero los cambios mayores de Astro 7 y valida integraciones. |
Un build más rápido no mejora una posición de Google por sí solo. Su valor SEO es operativo: reduce el tiempo entre corregir contenido y publicarlo, hace más viable regenerar sitios grandes y ayuda a mantener páginas actualizadas. El resultado final todavía debe ofrecer HTML rastreable, títulos descriptivos, contenido original, enlaces internos útiles, imágenes con texto alternativo y una buena experiencia móvil.
Google recomienda contenido pensado primero para personas, con información original, metodología clara y fuentes confiables. Por eso este análisis separa los datos oficiales de nuestro benchmark, publica el entorno de prueba y explica sus límites. También conviene recordar que Core Web Vitals y la experiencia de página ayudan, pero no garantizan el primer puesto: relevancia y utilidad siguen siendo centrales.
Instala Astro 7.3.1 o una versión posterior. Astro 7.3.0 tuvo un error que impedía iniciar o compilar proyectos que usan astro:assets.
No. experimental.incrementalBuild sigue siendo experimental y debe habilitarse. Además, cada ruta que quieras reutilizar necesita un cacheKey; las demás se renderizan siempre.
Sí en Astro 7.3. Antes, 7.2 desactivaba la caché incremental cuando build.concurrency era mayor que 1. Mide consumo de RAM antes de aumentar el valor en CI.
No necesariamente. Es la mediana de nuestro fixture de 1,200 módulos en una máquina concreta. La arquitectura, contenido, plugins, imágenes, CPU y caché cambian el resultado. Úsalo como evidencia de la dirección de la mejora, no como garantía.
La actualización se centra principalmente en compilación y correcciones internas. Puede mejorar el proceso de publicación, pero no implica automáticamente un mejor LCP, INP o CLS para el visitante. Esas métricas deben medirse en producción.
Encuentra primero nuestros próximos artículos
Marca Teramont como fuente preferida para ver más de nuestras guías y noticias en Google, Top Stories y sus experiencias con IA.

Continúa explorando guías, noticias y análisis relacionados.

General
Next.js 16.3.3 y 15.5.24 corrigen dos RCE críticas en servidores Windows y optimización AVIF. Revisa el impacto y actualiza producción de forma segura.
Leer más7 min de lectura
General
Guía técnica de Astro 7 en español: qué cambia frente a Astro 6, mejoras de rendimiento, Vite 8, compilador Rust, SEO, migración y despliegue en VPS.
Leer más14 min de lectura
General
Qué confirma Mojang sobre Wilderness Bound, qué falta por anunciar y cómo preparar una expedición survival sin arriesgar el mundo de tu comunidad.
Leer más5 min de lectura