Logo

Para los que tengan su proyecto en un index.js

Escrito por
13 de noviembre de 2023

primero debemos crear el servidor virtual con el dominio: create virtual Server en mi caso puse envivo.top y luego crear.

Luego verificamos entrando a la carpeta de dominios:

/etc/apache2/sites-available/

entramos en esta carpeta escribiendo:

nano envivo.top.conf 

luego tendrás que agregar los campos:

ATENCIÓN : Si estas usando webmin el certificado lo agrega automaticamente asi que no tendras que agregar las lineas del certificado.

<VirtualHost *:80>
    ServerName envivo.top
    Redirect permanent / https://envivo.top/
</VirtualHost>

<VirtualHost *:443>
    ServerName envivo.top

    SSLCertificateFile /etc/letsencrypt/live/envivo.top/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/envivo.top/privkey.pem
    Include /etc/letsencrypt/options-ssl-apache.conf

    ProxyPass / http://localhost:3000/
    ProxyPassReverse / http://localhost:3000/

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

como siguiente paso es clonar nuestro proyecto en alguna carpeta de nuestro servidor en mi caso: /home/next/envivo.top

Atención: previamente debes instalar pm2:

npm install -g pm2
cd /ruta/del/proyecto
pm2 start tu_script.js

En mi caso me dirijo /home/next/envivo.top y estando en el proyecto escribo:

pm2 start npm --name "envivo.top" -- start

por último debemos correr nuestro proyecto con el siguiente comando:

npm run build

Y listo ya deberia estar corriendo el dominio

Para los que tengan su proyecto en un index.js

pueden guiarse del siguiente codigo:


const dotenv = require('dotenv');
dotenv.config();
const express = require('express');
const https = require('https');
const fs = require('fs');
const route = require('./routes.js');
const cors = require('cors');

const app = express();

app.use(cors());
app.use(express.json());
app.use('/music', express.static('./downloads'));
app.use('/api', route);

// Configuración para el servidor HTTPS
const httpsOptions = {
  key: fs.readFileSync('/etc/ssl/virtualmin/169985729449668/ssl.key'), // Reemplaza con la ruta a tu clav>
  cert: fs.readFileSync('/etc/ssl/virtualmin/169985719449668/ssl.cert'), // Reemplaza con la ruta a tu ce>
};
169985648837673

const httpsServer = https.createServer(httpsOptions, app);

const PORT = 9100; // Cambié el puerto a 9100

httpsServer.listen(PORT, () => {
  console.log('El servidor está corriendo en el puerto ' + PORT);
});

Más Noticias

Asteroide impactó la Tierra en la región de Siberia: Fue detectado solo horas antes por las agencias espaciales

04 dic. 2024 – 09:11 hrs. Un asteroide de 70 centímetros de longitud impactó a la Tierra durante la noche de este martes 3 de diciembre en Siberia, región oriental…

Quién es Abu Mohammed al-Golani, líder de la renovada insurgencia en Siria

Abu Mohammed al-Golani. Durante los últimos doce años, el líder insurgente sirio Abu Mohammed al-Golani ha trabajado para remodelar su imagen pública y la insurgencia que comanda, renunciando a sus…

Los cinco grandes fracasos cinematográficos del 2024: estas son las películas que se han dado el batacazo en taquilla

Joaquin Phoenix en una escena de ‘Joker: Folie à Deux’ (Warner Bros. Pictures) Mientras que las grandes cabeceras periodísticas descorchan el champán – siendo éste un símil para hablar de…

Trump diseñó una propuesta de cese del fuego entre Ucrania y Rusia que es resistida por Zelensky y la OTAN

Donald Trump y Volodimir Zelensky (REUTERS/Shannon Stapleton/Archivo) (Desde Washington, Estados Unidos) A la distancia, por medio de contactos informales, Donald Trump y Volodimir Zelensky negocian un acuerdo político que permita…