Aplica a: Cloud Server con Node.JS + Nginx instalado · Tiempo estimado: 20 min
¿Qué vas a lograr?
Configurar Nginx como proxy reverso para una aplicación Node.JS, crear una app de ejemplo y agregar un certificado SSL.
Antes de empezar
Conectáte al servidor por SSH — los datos de conexión están en Mi cuenta en Mis Servicios → Cloud & IaaS → Gestionar → Software y accesos.
Paso 1 — Configurar Nginx
Andá al directorio de configuración de Nginx:
cd /etc/nginx/sites-available
Creá el archivo de configuración para tu dominio (reemplazá tudominio.com por el tuyo):
nano tudominio.com
Pegá el siguiente contenido, reemplazando tudominio.com por tu dominio:
server {
server_name tudominio.com;
root /var/www/tudominio.com;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}Creá el enlace simbólico para activar el sitio:
cd /etc/nginx/sites-enabled/
ln -s /etc/nginx/sites-available/tudominio.com tudominio.com
Verificá que la configuración sea correcta:
nginx -t
Si todo está bien, el sistema muestra syntax is ok y test is successful.
Reiniciá Nginx:
service nginx restart
Para comprobar el funcionamiento de Nginx:
service nginx status
Paso 2 — Crear la aplicación en Node.JS
En el directorio /root, creá el archivo de la aplicación:
cd /root
nano testapp.js
Pegá el siguiente código:
const http = require('http');
const hostname = 'localhost';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hola mundo!\n');
});
server.listen(port, hostname, () => {
console.log(`Servidor corriendo en en http://${hostname}:${port}/`);
});Detené la aplicación que corre por defecto e iniciá la tuya con PM2:
pm2 stop app.js
Ejecutá tu aplicación con el servicio PM2:
pm2 start testapp.js
Cada vez que modifiques
testapp.js, reiniciá la aplicación con:
pm2 restart testapp.js
Una vez completado este paso, podés ingresar a tu dominio y ver la aplicación funcionando. Si querés acceder directamente por IP:3000, primero habilitá el puerto 3000 en el Firewall del Cloud Server.
Paso 3 — Instalar el certificado SSL
certbot --nginx -d tudominio.com -d www.tudominio.com
Cuando el sistema pregunta sobre la redirección HTTP → HTTPS, seleccioná la opción 2 y presioná Enter.
Al finalizar, el sitio queda protegido con HTTPS.





