База на знаења
Cómo correr una API o backend Node.js en WizHosting (cPanel + CloudLinux) Испечати
En WizHosting podés correr aplicaciones Node.js (APIs, backends, SSR, etc.) usando el Selector de Node.js integrado con cPanel y CloudLinux.
No hace falta acceso root: todo se configura desde tu cuenta de cPanel.
En esta guía vamos a ver:
-
Requisitos y limitaciones.
-
Cómo preparar tu app Node.js.
-
Cómo crear la aplicación en cPanel (Setup Node.js App).
-
Cómo instalar dependencias (
npm install) desde el panel. -
Cómo configurar variables de entorno.
-
Cómo ver logs y errores.
-
Errores típicos y soluciones.
1. Requisitos y limitaciones
Antes de empezar, tené en cuenta:
-
Necesitás un plan de hosting que incluya soporte para Node.js.
-
El servidor corre CloudLinux + cPanel con el Selector de Node.js (Node.js App).
-
No vas a escuchar en un puerto público (tipo 3000 abierto); el sistema hace un proxy interno desde Apache/Nginx hacia tu app Node, manejado automáticamente por el selector de aplicaciones.
Si en tu cPanel no ves la opción “Setup Node.js App” o “Node.js App” dentro de la sección Software, escribinos al soporte de WizHosting para que te confirmemos si tu plan actual soporta Node.
2. Preparar tu app Node.js
2.1. Estructura mínima recomendada
Tu proyecto debería tener como mínimo:
-
Un archivo de entrada, por ejemplo:
app.js,server.jso similar. -
Un
package.jsoncon un scriptstart. -
Tus dependencias listadas (express, dotenv, etc.).
Ejemplo básico de package.json:
2.2. Escuchar el puerto correcto
En aplicaciones Node para hosting compartido no se usa un puerto fijo tipo 3000.
El selector de Node.js define un puerto interno y lo expone vía variable de entorno (PORT). Tu app tiene que respetarlo.
Ejemplo de app.js:
Si clavás el puerto a mano (por ejemplo app.listen(3000) sin usar process.env.PORT), el selector de aplicaciones puede no poder enrutar y el sitio no va a responder como corresponde.
3. Subir el código al servidor
Tenés dos caminos: FTP/SFTP o Administrador de archivos de cPanel.
3.1. Crear una carpeta para tu app
Recomendación:
-
Entrá a cPanel → File Manager / Administrador de archivos.
-
En tu home (
/home/usuario), creá una carpeta para tus apps, por ejemplo:-
nodeapps/mi-api
-
Así no mezclás el código con public_html.
3.2. Subir el proyecto
En tu PC:
-
Borrá
node_modules(no lo vamos a subir). -
Comprimí la carpeta del proyecto (
mi-api) en un ZIP (por ejemplomi-api.zip).
En cPanel:
-
Entrá a la carpeta
nodeapps/mi-api. -
Usá Upload / Cargar para subir
mi-api.zip. -
Una vez subido, seleccioná el ZIP y hacé clic en Extract / Extraer.
Al final deberías tener dentro de nodeapps/mi-api:
-
app.js(oserver.js) -
package.json -
el resto de tu código
pero sin node_modules.
4. Crear la aplicación Node.js en cPanel
-
Iniciá sesión en cPanel.
-
Andá a Software → Setup Node.js App (el nombre puede variar levemente según el tema de cPanel).
-
Hacé clic en Create Application.
4.1. Completar los datos de la app
En el formulario vas a ver varios campos. Los más importantes:
-
Node.js version
Elegí una versión compatible con tu proyecto (ej: 18.x, 20.x). -
Application mode
Seleccioná Production para un sitio en producción. -
Application root
Es la ruta dentro de tu cuenta hasta el código de la app, por ejemplo:nodeapps/mi-api -
Application URL
Elegí el dominio o subdominio por el cual se va a acceder a la app, por ejemplo:-
https://api.tudominio.com -
o asigná un subdominio nuevo a este app root.
-
-
Application startup file
El archivo de entrada, por ejemplo:-
app.js -
server.js
-
Al completar todo, confirmá con Create / Create Application.
Esto le indica al servidor:
-
Qué código ejecutar.
-
En qué ruta de tu cuenta está el proyecto.
-
A qué dominio o subdominio se debe apuntar.
5. Instalar dependencias con “Run NPM Install”
Una vez creada la app:
-
Volvé a Setup Node.js App y buscá la app que acabás de crear.
-
Hacé clic en el icono de editar (lápiz).
-
Dentro del detalle de la app, buscá el botón Run NPM Install o similar.
Eso va a ejecutar npm install dentro de la carpeta de la app, usando la versión de Node configurada y generando el directorio node_modules en el servidor, sin que tengas que subirlo vos.
Esperá a que termine el proceso (suele mostrar un log o al menos un mensaje de éxito/error).
6. Configurar variables de entorno (ENV)
Muchas APIs y backends usan variables para:
-
Credenciales de base de datos.
-
Claves de APIs.
-
Secrets en general.
En la pantalla de configuración de la app Node.js vas a ver una sección llamada algo como Environment Variables o Variables de entorno.
-
Agregá las variables que necesites, por ejemplo:
-
NODE_ENV=production -
DB_HOST=localhost -
DB_NAME=mi_db -
DB_USER=usuario_db -
DB_PASS=contraseña_segura
-
-
Guardá cambios.
En tu código Node.js podés leerlas con process.env.NOMBRE_DE_LA_VAR, por ejemplo:
7. Iniciar y reiniciar la aplicación
En el detalle de la app Node.js vas a encontrar botones como:
-
Start Application
-
Stop Application
-
Restart Application
Procedimiento típico:
-
Después de
Run NPM Install, hacé clic en Start (si la app no está corriendo) o Restart (si ya estaba en marcha). -
Esperá unos segundos.
-
Probá abrir el dominio o subdominio configurado (ej:
https://api.tudominio.com).
Si todo está bien:
-
Deberías ver la respuesta de tu API (JSON, mensaje “API funcionando”, etc.).
-
En caso de error 500/503, revisá logs (ver siguiente punto).
8. Ver logs y errores
Dependiendo de la versión del panel, podés tener:
-
Un botón View Logs dentro de la configuración de la app Node.
-
Archivos de log creados en la carpeta de la app o en una ruta de logs de usuario.
Revisá especialmente:
-
Errores de sintaxis en el código.
-
Dependencias que no se pudieron instalar.
-
Referencias a variables de entorno no definidas.
-
Problemas típicos: no usar
process.env.PORT, etc.
Si preferís, también podés loguear a archivo desde tu app con algún logger (p.ej. winston) o con console.log redirigidos.
9. Errores frecuentes y soluciones
9.1. La app no levanta / Service unavailable
Posibles causas:
-
El archivo de inicio (startup file) está mal escrito (ej:
app.jsen el panel, pero el archivo se llamaserver.js). -
No se ejecutó
Run NPM Instally faltan dependencias. -
El código hace
app.listen(3000)en lugar de usarprocess.env.PORT.
Soluciones:
-
Revisar el nombre exacto del archivo de entrada.
-
Ejecutar Run NPM Install de nuevo.
-
Ajustar el
listenpara que useprocess.env.PORT.
9.2. Error “Cannot find module 'express'” u otros módulos
Causas:
-
Dependencia no listada en
package.json. -
npm installfalló.
Soluciones:
-
En tu PC, asegurate de tener la dependencia en
dependencies(no solo endevDependenciessi se usa en producción). -
Subí de nuevo el
package.jsonactualizado. -
Ejecutá otra vez Run NPM Install en cPanel.
9.3. Quiero actualizar el código de la app
Cada vez que cambies el código:
-
En tu PC, actualizá los archivos del proyecto.
-
Volvé a comprimir solo el código (sin
node_modules) en un ZIP. -
Subí y extraé en la misma carpeta de la app, sobrescribiendo archivos.
-
Si cambió
package.json, ejecutá Run NPM Install. -
Usá Restart Application desde el panel.
9.4. Necesito usar HTTPS
Del SSL se encarga el servidor web (Apache/Nginx) con Let’s Encrypt / AutoSSL.
Tu app Node.js no necesita manejar certificados directamente: recibe la conexión ya terminada por el proxy interno.
Solo asegurate de:
-
Tener el certificado SSL activo para tu dominio/subdominio.
-
Usar siempre URLs
https://en tus clientes.
10. ¿Cuándo NO usar Node.js en el hosting compartido?
Te conviene evaluar si realmente necesitás backend Node.js.
Si lo que tenés es:
-
Una web React, Vue, etc. puramente del lado del cliente,
generalmente es mejor subirla como sitio estático (ver Guía A), sin Node corriendo en el servidor.
Reservá Node.js para:
-
APIs REST/GraphQL.
-
SSR/Next.js en modo Node.
-
Backends con lógica de negocio que sí necesitan runtime del lado del servidor.
11. Resumen rápido
-
Creá tu app Node con
app.js/server.jsy unpackage.jsoncon scriptstart. -
Usá
process.env.PORTpara escuchar el puerto. -
Subí el código a una carpeta tipo
nodeapps/mi-api(sinnode_modules). -
En cPanel → Setup Node.js App → Create Application.
-
Configurá versión de Node, Application root, URL y startup file.
-
Ejecutá Run NPM Install.
-
Configurá variables de entorno si las necesitás.
-
Start/Restart y probá tu dominio/subdominio.
-
Revisá logs ante cualquier error.
Дали Ви помогна овој одговор?
Понудени резултати
Para crear una cuenta de correo electrónico, sigue estos pasos: Accede a tu cPanel. Ve a...
Para crear una base de datos MySQL, sigue estos pasos: Accede a tu cPanel. Ve a "Bases de...
Para subir archivos usando el Administrador de Archivos, sigue estos pasos: Accede a tu...
Para configurar un dominio adicional, sigue estos pasos: Accede a tu cPanel. Ve a "Dominios...
Solución al Error 503 Service Unavailable: Falta de Espacio en la Cuenta de Hosting En...
