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.
À 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 :
- le sauvegarder et le partager avec Git, puis l'envoyer sur GitHub ;
- 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 ;
- 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 updatepuisapt install nginx, un dossier dans/var/www, propriétaireutilisateur:www-data, droits750. systemctl startlance un service,systemctl enablele 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 ✓ RéussiSur ton ordinateur, le dossier portfolio contient ta page. Tape dans le terminal les commandes pour :
- entrer dans le dossier et le transformer en dépôt Git ;
- préparer tous les fichiers et faire un premier commit ;
- relier le dépôt à
https://github.com/lea/portfolio.gitsous le nomorigin; - envoyer la branche
main.
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
Bravo, cet exercice est réussi !
- Indice 1 :
cd portfoliopuisgit init. - Indice 2 :
git add .puisgit commit -m "Première version du portfolio". - Indice 3 :
git remote add origin https://github.com/lea/portfolio.gitpuisgit push -u origin main.
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 ✓ RéussiTu es maintenant connecté au serveur Linux (en SSH) avec l'utilisatrice lea. Prépare-le :
- mets à jour la liste des paquets et installe
nginx; - crée le dossier
/var/www/portfolio; - donne-le à
leaet au groupewww-data(pour que le serveur web puisse le lire) ; - mets les droits
750: tout pour lea, lecture pour le groupe, rien pour les autres ; - démarre
nginxet active son démarrage automatique.
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
Bravo, cet exercice est réussi !
- Indice 1 :
sudo apt updatepuissudo apt install nginx. - Indice 2 :
sudo mkdir -p /var/www/portfolio,sudo chown lea:www-data /var/www/portfolio,sudo chmod 750 /var/www/portfolio. - Indice 3 :
sudo systemctl start nginxetsudo systemctl enable nginx.
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 ✓ RéussiLe site doit répondre sur monsite.fr. Avec le terminal réseau, vérifie et note dans le fichier :
- l'adresse IP vers laquelle pointe
monsite.fr(nslookup) ; - le code HTTP renvoyé par
https://monsite.fr(curl -I) ; - sur le serveur, la commande
ss -tlnmontre les ports ouverts : quel port manque pour que le HTTPS fonctionne sur ce serveur ?
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
Bravo, cet exercice est réussi !
- Indice 1 :
nslookup monsite.fr: l'adresse est sur la ligneAddressde la réponse. - Indice 2 :
curl -I https://monsite.fr: le code est sur la première ligne, aprèsHTTP/2. - Indice 3 :
ss -tlnmontre 22 et 80. HTTPS utilise le port 443.
Toujours bloqué ? Voir une solution
ip de monsite.fr = 51.38.12.40
code http = 200
port manquant pour https = 443 Défi réussi !
Ton badge Mini-projets passe en or dès que toutes les leçons du cours sont terminées. Retrouve tes badges sur la page d'accueil.