nuxt logo

Traducción de Documentación (No Oficial)

Servidor

Construye aplicaciones full-stack con el framework de servidor de Nuxt. Puedes obtener datos de tu base de datos u otro servidor, crear APIs, o incluso generar contenido estático del lado del servidor como un sitemap o un feed RSS, todo desde una única base de código.

Ver también guide > directory-structure > server

Impulsado por Nitro

Motor del servidor

El servidor de Nuxt es Nitro. Fue creado originalmente para Nuxt, pero ahora es parte de UnJS y está abierto para otros frameworks, e incluso puede usarse por sí solo.

Usar Nitro le da superpoderes a Nuxt:

  • Control total de la parte del servidor de tu aplicación
  • Despliegue universal en cualquier proveedor (muchos sin configuración)
  • Renderizado híbrido

Nitro utiliza internamente h3, un framework HTTP minimalista construido para alto rendimiento y portabilidad.

Puntos de Extremo del Servidor y Middleware

Puedes gestionar fácilmente la parte exclusiva del servidor de tu aplicación Nuxt, desde los puntos de extremo de la API hasta el middleware.

Tanto los puntos de extremo como el middleware pueden definirse así:

server/api/test.ts
export default defineEventHandler(async (event) => {
  // ... Haz lo que quieras aquí
})

Y puedes devolver directamente text, json, html o incluso un stream.

De manera predeterminada, soporta reemplazo de módulo en caliente y auto-importación como las otras partes de tu aplicación Nuxt.

Ver también guide > directory-structure > server

Despliegue Universal

Nitro ofrece la capacidad de desplegar tu aplicación Nuxt en cualquier lugar, desde un servidor bare metal hasta la red edge, con un tiempo de inicio de solo unos pocos milisegundos. ¡Eso es rápido!

Ver también blog > nuxt-on-the-edge

Hay más de 15 presets para construir tu aplicación Nuxt para diferentes proveedores de nube y servidores, incluyendo:

O para otros entornos de ejecución:

Ver también getting-started > deployment

Renderizado Híbrido

Nitro tiene una poderosa característica llamada routeRules que te permite definir un conjunto de reglas para personalizar cómo se renderiza cada ruta de tu aplicación Nuxt (y más).

nuxt.config.ts
export default defineNuxtConfig({
  routeRules: {
    // Generado en tiempo de construcción para propósitos de SEO
    '/': { prerender: true },
    // Cacheado por 1 hora
    '/api/*': { cache: { maxAge: 60 * 60 } },
    // Redirección para evitar 404
    '/old-page': {
      redirect: { to: '/new-page', statusCode: 302 }
    }
    // ...
  }
})
Ver también guide > concepts > rendering#hybrid-rendering

Además, hay algunas reglas de ruta (por ejemplo, ssr, appMiddleware, y noScripts) que son específicas de Nuxt para cambiar el comportamiento al renderizar tus páginas a HTML.

Algunas reglas de ruta (appMiddleware, redirect y prerender) también afectan el comportamiento del lado del cliente.

Nitro se utiliza para construir la aplicación para renderizado del lado del servidor, así como para pre-renderizado.

Ver también guide > concepts > rendering