Publier sa première page sur un VPS
Un VPS nu ne sert aucune page : il faut un serveur web, un fichier et un port ouvert. Nginx est un choix courant sur Debian, léger et simple à configurer. L'objectif de ce guide est une page statique réellement joignable par l'adresse IPv6 et, si vous en avez une, par l'adresse IPv4, sans passer par un nom de domaine.
Installer Nginx
sudo apt update
sudo apt install -y nginx
sudo systemctl status nginxLe paquet démarre le service et active son lancement au boot. systemctl status nginx doit afficher active (running). Si le service échoue, lisez journalctl -u nginx avant de modifier la configuration.
Créer la page et la racine
sudo mkdir -p /var/www/votre-domaine.fr
sudo chown -R www-data:www-data /var/www/votre-domaine.fr
sudo chmod 755 /var/www/votre-domaine.frCréez ensuite /var/www/votre-domaine.fr/index.html avec un contenu minimal, puis ajustez les droits du fichier en 644. N'utilisez jamais chmod 777 : le serveur web n'a besoin que de lire. Le propriétaire www-data permet à Nginx de servir les fichiers sans les rendre modifiables par tous.
Déclarer le site
Créez /etc/nginx/sites-available/votre-domaine.fr :
server {
listen 80;
listen [::]:80;
server_name votre-domaine.fr www.votre-domaine.fr;
root /var/www/votre-domaine.fr;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}Activez-le avec un lien symbolique, puis validez avant de recharger :
sudo ln -s /etc/nginx/sites-available/votre-domaine.fr /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginxnginx -t doit répondre syntax is ok et test is successful. Un rechargement échoue proprement sans couper le service existant ; un redémarrage coupe les connexions en cours.
Ouvrir le port 80
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw status verboseAutorisez SSH avant d'activer UFW, sinon vous perdez l'accès distant. Les règles doivent apparaître en IPv4 et en IPv6. Si un autre pare-feu est actif, adaptez la commande plutôt que d'empiler deux systèmes.
Tester en IPv6 et IPv4
curl -I http://[VOTRE_IPV6]/
curl -4 -I http://VOTRE_IPV4/Les crochets sont obligatoires dans une URL IPv6. Les deux requêtes doivent renvoyer HTTP/1.1 200 OK. Si l'IPv6 répond et l'IPv4 non, vérifiez l'adresse et le pare-feu. Depuis un navigateur, utilisez la page test IPv6 pour confirmer le chemin réseau. Une page accessible par IP mais pas par nom indique un problème DNS, pas un problème Nginx.
Dépannage rapide
- La page par défaut de Nginx reste affichée : vérifiez que le lien symbolique existe dans
sites-enabledet queserver_namecorrespond au nom utilisé, puis rechargez Nginx. - Erreur 403 : les droits ou le propriétaire de la racine ne permettent pas la lecture. Repassez le dossier en
755et le fichier en644. - Connexion refusée : le port 80 n'est pas ouvert dans le pare-feu, ou Nginx n'écoute pas. Contrôlez
ss -lntp | grep :80etufw status. - La page répond en local mais pas depuis Internet : testez l'adresse IPv6 dans le navigateur et vérifiez que le service écoute aussi sur
[::]:80.
Publicité
Cet article vous a-t-il aidé ?
À lire aussi
- Pointer un nom de domaine vers un VPSCréer les enregistrements A et AAAA, choisir le TTL et vérifier la résolution avant de configurer le serveur.
- Mettre à jour Debian sur un VPSapt update et upgrade, redémarrage nécessaire et précautions avant une montée de version.
- Quand prendre une IPv4 dédiéeIPv6 incluse, IPv4 en option : les cas où l'IPv4 devient nécessaire et comment gérer la double pile.