Node.js es la base de muchísimas aplicaciones web modernas: APIs con Express, tiendas con Next.js, paneles internos o las apps que generan herramientas de IA. Pero una app Node.js no se publica subiendo archivos y ya: necesita un proceso que esté siempre encendido.

En esta guía te explicamos qué hosting necesitas, cómo publicar tu app en un hosting con cPanel paso a paso y en qué casos conviene un VPS.

En este artículo:

Qué necesita una aplicación Node.js

Una web en PHP o HTML se ejecuta cuando alguien la visita. Una app Node.js, en cambio, es un servidor que arranca una vez y se queda escuchando. Para publicarla necesitas:

  • La versión de Node.js que pide tu proyecto (la ves en la documentación del framework o en package.json).
  • Instalar las dependencias con npm install.
  • Un archivo de arranque (por ejemplo app.js o server.js).
  • Algo que mantenga la app encendida y la reinicie si se detiene, y que le pase las visitas del dominio.

Opción 1: hosting compartido con Setup Node.js App

El hosting compartido de K2WebHost incluye en cPanel la herramienta Setup Node.js App, que se encarga de mantener la app en marcha y de conectarla con tu dominio:

  1. En cPanel, abre Setup Node.js App y pulsa Create Application.
  2. Elige la versión de Node.js que necesita tu proyecto.
  3. Elige el modo Production.
  4. Indica la carpeta de la aplicación y la dirección web donde se verá.
  5. Indica el archivo de arranque, por ejemplo app.js.
  6. Sube tu código a esa carpeta (sin la carpeta node_modules).
  7. Pulsa Run NPM Install para instalar las dependencias de tu package.json.
  8. Añade tus variables de entorno desde el mismo panel y reinicia la app.

Un detalle importante: en este tipo de hosting tu app no debe fijar un puerto propio a mano. Usa el puerto que recibe en la variable PORT:

const port = process.env.PORT || 3000;
app.listen(port);

Los planes compartidos empiezan en US$2.20 al mes (en la web verás el precio en tu moneda) e incluyen SSL gratis y discos NVMe.

Opción 2: un VPS para Node.js

Con un VPS tienes acceso root e instalas tú la versión de Node.js, un gestor de procesos como PM2 y Nginx como proxy inverso con SSL. Es la opción para apps con mucho tráfico, conexiones en tiempo real o varios servicios a la vez. Si vas por este camino, te será útil nuestra guía sobre cómo configurar Nginx como proxy inverso para Node.js.

Nuestros VPS empiezan en US$6.99 al mes con 4 GB de RAM y 2 cores Intel Xeon.

Compartido o VPS: cómo elegir

Tu casoRecomendación
API pequeña con ExpressHosting compartido con Setup Node.js App
Web de un proyecto personal o prototipoHosting compartido
Web generada con una herramienta de IA que necesita servidorCompartido si la versión de Node.js está disponible; si no, VPS
WebSockets o chat en tiempo real con muchos usuariosVPS
Varias apps y bases de datos en el mismo servidorVPS
Trabajos en segundo plano o colasVPS

Errores frecuentes al publicar una app Node.js

  • Subir la carpeta node_modules: pesa mucho y puede no funcionar en el servidor. Instala las dependencias allí.
  • Usar un puerto fijo: en hosting compartido, usa siempre process.env.PORT.
  • Olvidar compilar: si usas TypeScript o un framework que genera una carpeta de salida, compila antes y arranca desde esa carpeta.
  • Versiones distintas: si en tu computadora usas una versión de Node.js y en el servidor otra, pueden aparecer errores. Usa la misma.
  • Claves en el código: guárdalas como variables de entorno.

Bases de datos para tu app Node.js

En el hosting compartido tienes bases de datos MySQL incluidas en cada plan (desde una en el plan Iniciate hasta ocho en el plan Master). Node.js se conecta a MySQL con paquetes como mysql2 o con un ORM como Prisma. Guarda siempre el usuario y la contraseña de la base de datos en variables de entorno.

Si tu proyecto usa MongoDB o PostgreSQL, puedes instalarlos en un VPS o usar un servicio de base de datos externo y conectarte desde tu app. Para proyectos que guardan pocos datos, también puedes usar SQLite.

Cómo actualizar tu app sin cortes

  1. Prueba los cambios en tu computadora con la misma versión de Node.js que en el servidor.
  2. Haz una copia de la carpeta de la app y de la base de datos.
  3. Sube los archivos nuevos (sin node_modules) y, si cambiaste dependencias, vuelve a ejecutar la instalación desde el panel.
  4. Si tu proyecto se compila, compila antes de subir o ejecuta el paso de compilación en el servidor.
  5. Reinicia la aplicación desde Setup Node.js App y revisa que responda.

Si la app no arranca después de actualizar, revisa el registro de errores y restaura la copia mientras encuentras el problema.

Seguridad básica para tu app

Una app Node.js publicada en internet recibe visitas de bots desde el primer día. Unas medidas sencillas evitan la mayoría de problemas:

  • Mantén las dependencias al día y revisa los avisos de seguridad de los paquetes que usas.
  • No muestres errores detallados a los visitantes: registra el detalle en el servidor y enseña un mensaje genérico.
  • Valida todo lo que llega de formularios y APIs antes de guardarlo en la base de datos.
  • Usa contraseñas fuertes para la base de datos y el panel, y no las compartas por chat o correo.
  • Haz copias de seguridad de la base de datos con regularidad, además de las que incluye tu plan.

¿Tu proyecto necesita su propio servidor?

Cuando tu aplicación, tu base de datos o tu entorno de pruebas ya no caben en tu computadora, un VPS te da recursos dedicados y acceso root. En K2WebHost tienes VPS con discos NVMe, sitios rápidos en hosting compartido y soporte en español 24/7.

Ver servidores VPS → · Hosting web

Preguntas frecuentes

¿El hosting compartido de K2WebHost soporta Node.js?

Sí. Puedes crear y gestionar aplicaciones Node.js desde cPanel con la herramienta Setup Node.js App.

¿Puedo elegir la versión de Node.js?

Sí. Al crear la aplicación eliges la versión entre las disponibles en el panel. Si necesitas una versión que no aparezca, un VPS te permite instalarla.

¿Por qué mi app no arranca en el hosting compartido?

Lo más habitual es que use un puerto fijo en lugar de process.env.PORT, que falten dependencias o que el archivo de arranque no sea el indicado en el panel.

¿Cuándo necesito un VPS para Node.js?

Cuando tu app usa WebSockets con muchos usuarios, varios servicios a la vez, tareas en segundo plano o más recursos de los que ofrece un plan compartido.

¿Cuánto cuesta un hosting para Node.js?

En K2WebHost, el hosting compartido empieza en US$2.20 al mes y los VPS en US$6.99 al mes. En nuestra web verás el precio en tu moneda.

¿Me ayudan a publicar mi app?

Sí. Nuestro soporte en español 24/7 puede ayudarte a configurar la aplicación en cPanel y a revisar errores de arranque.

Tags: