Skip to content

Instantly share code, notes, and snippets.

@Bigaston
Created July 30, 2020 08:39
Show Gist options
  • Save Bigaston/7797c218bdd5535cfbd6c74cc35fed3a to your computer and use it in GitHub Desktop.
Save Bigaston/7797c218bdd5535cfbd6c74cc35fed3a to your computer and use it in GitHub Desktop.

Commend installer un site avec express et nginx?

  1. Installer NGinx Nginx va être le proxy qui va faire le chemin entre les domaines/sous-domaines et le bon port de votre serveur Express (vu que tous les domaines entrent sur le port 80)

  2. Installez votre serveur NodeJS Clonez le repo github/git, faites un petit NPM Install, en configurant et vérifiant quel est le port utilisé

  3. Lancez votre site internet en mode daemon Pour que votre serveur reste lancé même quand vous fermez votre terminal (c'est plus pratique). Pour ça on va utiliser le module node PM2.
    Il s'installe avec la commande npm install -g pm2
    Pour démarrer le serveur, utiliser la commande pm2 start votrefichier.js. Vous pouvez vérifier si le serveur tourne bien en allant sur [votre_ip]:[le_port]

  4. Faites la passerelle avec NGinx Rendez vous dans /etc/nginx/sites-enabled, et ensuite collez le document si dessous dans un nouveau fichier (vous aurez peut-être besoin de passer en sudo).
    sudo nano monsite pour créer le document, et ensuite le texte suivant à mettre dedans, en replaçant votredomaine.com par votre domaine et [votre port] par votre port.

server {
        server_name votredomaine.com;

        location / {
                proxy_pass http://127.0.0.1:[votre port];
        }
}

Ce document va dire à NGinx de rediriger toutes les requêtes venant depuis votredomaine.com vers l'app tourant sur le port [votre port]. On a pas besoin de plus ici, même si NGINX peut être vraiment plus puissant que ça.
Relancez enfin nginx avec sudo service nginx restart.

  1. (Optionnel) Passez votre site en HTTPS Grâce à certbot et let's encrypt, vous pouvez avoir des certificats HTTPS gratuit, et le tout super facilement. Toutes les infos sont sur certbot
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment