Cours RechercherCtrl K

Mini-projets Projet 3

Mettre son site en ligne

Le parcours complet d'un site, de ton ordinateur jusqu'à Internet : Git et GitHub, la préparation du serveur Linux, puis les vérifications réseau.

1 h

À la fin de ce projet, tu sauras

  • Versionner un projet et l'envoyer sur GitHub
  • Préparer un serveur Linux pour héberger le site
  • Vérifier le DNS, la réponse HTTP et les ports ouverts

Le chemin d'un site

Ton portfolio fonctionne sur ton ordinateur. Pour qu'il soit visible de tous, il faut :

  1. le sauvegarder et le partager avec Git, puis l'envoyer sur GitHub ;
  2. préparer un serveur (une machine Linux allumée en permanence, louée chez un hébergeur) : installer le serveur web, créer le dossier du site avec les bons droits ;
  3. vérifier que tout répond : le nom de domaine pointe vers le serveur, le site renvoie un code 200, les bons ports sont ouverts.

Chaque étape se fait dans un terminal différent : celui de ton ordinateur (Git), celui du serveur (Linux), puis les outils réseau.

Les cours utilisés

À retenir

  • Ordinateur → GitHub : git init, git add ., git commit, git remote add origin …, git push -u origin main.
  • Serveur : apt update puis apt install nginx, un dossier dans /var/www, propriétaire utilisateur:www-data, droits 750.
  • systemctl start lance un service, systemctl enable le relance à chaque démarrage.
  • Vérifier : nslookup (DNS), curl -I (code HTTP), ss -tln (ports).

Voir la fiche de révision de cette leçon (à imprimer ou à relire avant un contrôle)

Étape 1 · Envoyer le projet sur GitHub

Facile

Sur ton ordinateur, le dossier portfolio contient ta page. Tape dans le terminal les commandes pour :

  1. entrer dans le dossier et le transformer en dépôt Git ;
  2. préparer tous les fichiers et faire un premier commit ;
  3. relier le dépôt à https://github.com/lea/portfolio.git sous le nom origin ;
  4. envoyer la branche main.
commandes.sh
eleve@cours: ~

Tape tes commandes ici ou dans le fichier à gauche : chaque commande tapée dans le terminal est ajoutée au fichier.

Consignes à réussir

  • À faire : portfolio est un dépôt Git
  • À faire : index.html est dans un commit
  • À faire : Le dépôt distant origin est ajouté
  • À faire : main est envoyée sur GitHub
Toujours bloqué ? Voir une solution
cd portfolio
git init
git add .
git commit -m "Première version du portfolio"
git remote add origin https://github.com/lea/portfolio.git
git push -u origin main

Étape 2 · Préparer le serveur

Moyen

Tu es maintenant connecté au serveur Linux (en SSH) avec l'utilisatrice lea. Prépare-le :

  1. mets à jour la liste des paquets et installe nginx ;
  2. crée le dossier /var/www/portfolio ;
  3. donne-le à lea et au groupe www-data (pour que le serveur web puisse le lire) ;
  4. mets les droits 750 : tout pour lea, lecture pour le groupe, rien pour les autres ;
  5. démarre nginx et active son démarrage automatique.
commandes.sh
eleve@cours: ~

Tape tes commandes ici ou dans le fichier à gauche : chaque commande tapée dans le terminal est ajoutée au fichier.

Consignes à réussir

  • À faire : nginx est installé
  • À faire : apt update vient avant apt install
  • À faire : /var/www/portfolio existe
  • À faire : Il appartient à lea:www-data
  • À faire : Les droits sont 750
  • À faire : nginx tourne et démarre automatiquement
  • À faire : Pas de chmod 777
Toujours bloqué ? Voir une solution
sudo apt update
sudo apt install nginx
sudo mkdir -p /var/www/portfolio
sudo chown lea:www-data /var/www/portfolio
sudo chmod 750 /var/www/portfolio
sudo systemctl start nginx
sudo systemctl enable nginx

Étape 3 · Vérifier depuis le réseau

Pour aller plus loin

Le site doit répondre sur monsite.fr. Avec le terminal réseau, vérifie et note dans le fichier :

  1. l'adresse IP vers laquelle pointe monsite.fr (nslookup) ;
  2. le code HTTP renvoyé par https://monsite.fr (curl -I) ;
  3. sur le serveur, la commande ss -tln montre les ports ouverts : quel port manque pour que le HTTPS fonctionne sur ce serveur ?
reponses.txt
eleve@cours: ~

Terminal réseau : seules les commandes du cours sont disponibles (ipcalc, ping, ip a, nslookup, traceroute, ss…). Tape help pour la liste. Tes réponses vont dans le fichier à gauche.

Consignes à réussir

  • À faire : monsite.fr pointe vers 51.38.12.40
  • À faire : Le site répond 200
  • À faire : Il faut ouvrir le port 443
Toujours bloqué ? Voir une solution
ip de monsite.fr = 51.38.12.40
code http = 200
port manquant pour https = 443