BIENVENUE10valable pour le premier mois seulement ! sur toutes les offresVoir les offres
Aller au contenu
← Base de connaissances

Configurer le SSL / HTTPS (reverse proxy)

Mettez Nginx ou Caddy en reverse proxy devant votre app et activez le HTTPS avec Let's Encrypt.

Configurer le SSL / HTTPS (reverse proxy)

Pour exposer une app en HTTPS, on place un reverse proxy (Nginx ou Caddy) devant elle. Le proxy termine le TLS et renvoie le trafic en HTTP vers votre conteneur ou votre processus.

Cause / Le problème

Sans HTTPS, les navigateurs affichent « Non sécurisé », les cookies ne sont pas protégés et certaines APIs refusent la connexion (mixed content). Le certificat doit être valide et renouvelé automatiquement.

Solution

Option A — Caddy (le plus simple, HTTPS automatique)

Caddy obtient et renouvelle les certificats Let’s Encrypt tout seul. Fichier Caddyfile :

app.exemple.com {
    reverse_proxy localhost:8080
}

Puis :

caddy run    # ou via le paquet système, caddy start

Caddy force automatiquement la redirection HTTP → HTTPS.

Option B — Nginx + certbot

  1. Installez Nginx et certbot :
    sudo apt install -y nginx certbot python3-certbot-nginx
  2. Configurez le vhost /etc/nginx/sites-available/app :
    server {
        listen 80;
        server_name app.exemple.com;
    
        location / {
            proxy_pass http://127.0.0.1:8080;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }
    }
  3. Activez et rechargez :
    sudo ln -s /etc/nginx/sites-available/app /etc/nginx/sites-enabled/
    sudo nginx -t && sudo systemctl reload nginx
  4. Générez le certificat :
    sudo certbot --nginx -d app.exemple.com
    Certbot ajoute lui-même le bloc HTTPS (port 443) et la redirection 80 → 443, et installe un timer de renouvellement.

Erreurs courantes : « mixed content » (votre app génère des URLs http:// — faites-la confiance au header X-Forwarded-Proto), certificat non renouvelé (vérifiez sudo certbot renew --dry-run), et ports 80/443 bloqués par un pare-feu.

oneSubnet

Hébergeur français à Paris. Serveurs de jeux et vocaux haute performance.

SERVICES

Ressources

LÉGAL

Tous les systèmes opérationnels