Déployer un site avec Nginx
Installez Nginx, configurez un vhost et mettez en ligne votre application ou site statique.
Prêt à lancer votre service ? Consultez les offres et commandez en ligne.
Voir les offres et commanderVue d'ensemble
Nginx est un serveur web performant, idéal pour héberger des sites statiques, des applications PHP-FPM, des reverse proxy ou des API. Ce guide installe Nginx sur Debian/Ubuntu et configure un site de démonstration.
Installation
apt update
apt install nginx -y
systemctl enable nginx
systemctl start nginxVérifiez que Nginx répond : ouvrez http://ADRESSE_IP dans votre navigateur. La page par défaut « Welcome to nginx » doit s'afficher.
ufw allow 'Nginx Full'. Voir le guide Configurer un pare-feu UFW.
Structure des fichiers
/var/www/, racine des sites web/etc/nginx/sites-available/, configurations disponibles/etc/nginx/sites-enabled/, sites activés (liens symboliques)/var/log/nginx/, journaux d'accès et d'erreurs
Créer un site statique
-
Créer le répertoire du site
mkdir -p /var/www/monsite.fr/html chown -R www-data:www-data /var/www/monsite.fr -
Ajouter une page d'accueil
echo '<!DOCTYPE html><html><head><title>Mon site</title></head> <body><h1>Bienvenue sur monsite.fr</h1></body></html>' \ > /var/www/monsite.fr/html/index.html -
Créer le virtual host
Créez
/etc/nginx/sites-available/monsite.fr:
server {
listen 80;
listen [::]:80;
server_name monsite.fr www.monsite.fr;
root /var/www/monsite.fr/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
access_log /var/log/nginx/monsite.fr.access.log;
error_log /var/log/nginx/monsite.fr.error.log;
}-
Activer le site
ln -s /etc/nginx/sites-available/monsite.fr /etc/nginx/sites-enabled/ nginx -t systemctl reload nginxnginx -tvalide la syntaxe avant rechargement. Ne rechargez jamais si le test échoue.
Pointer votre nom de domaine
Chez votre registrar, créez un enregistrement A pointant vers l'IPv4 de votre VPS. Propagation DNS : quelques minutes à 24 h. Testez avec :
dig +short monsite.frActiver HTTPS avec Let's Encrypt
Installez Certbot :
apt install certbot python3-certbot-nginx -y
certbot --nginx -d monsite.fr -d www.monsite.frSuivez l'assistant (e-mail, conditions, redirection HTTP → HTTPS recommandée). Le certificat se renouvelle automatiquement via un timer systemd.
Test de renouvellement :
certbot renew --dry-runHéberger une application PHP (optionnel)
apt install php-fpm -yAjoutez dans votre bloc server :
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
}Adaptez la version PHP (php8.1-fpm, php8.2-fpm…) selon ls /run/php/.
Dépannage
- 502 Bad Gateway, PHP-FPM arrêté ou mauvais socket dans la config.
- 403 Forbidden, Droits incorrects sur
/var/www/ou index manquant. - Site par défaut affiché, Vérifiez
server_nameet le lien danssites-enabled.
Consultez les logs : tail -f /var/log/nginx/error.log
Prochaines étapes
- Monter une IP additionnelle pour un second site isolé
- Utiliser le panel de gestion