Installer un environnement de travail avec Ubuntu : Apache 2 avec les pieds et 15 minutes pour débuter

- 4 mins

En ce lundi de lendemain d’hackathon, j’ai reçu plusieurs retours de personnes qui lisent des documentations mais restent bloquées à une étape importante : “mais comment tu fais pour fair apparaître ce que tu fais sur ton ordinateur comme si c’était une page oueb ?”

Il vous faut un environnment de travail, autrement écrit un serveur local installé sur votre ordinateur. Voyons cela rapidement ensemble.

Il existe différents logiciels de serveurs web qui sont disponibles (Apache, Tomcat, nginx). Apache est libre et gratuit (Floss), disponible sur plusieurs plateformes et est simple à installer.

Cet environnement de travail c’est localhost (l’hôte local en français), le nom habituel qui désigne une interface logique de votre ordinateur (à titre d’exemple).

Installation

Avec firefox ;-) parce que “Hygiène numérique 1, surfez mieux équipé.e.s

Dans votre terminal :

sudo apt-get update
sudo apt-get install apache2

Après l’installation, accédez à http://localhost/ avec votre navigateur pour vérifier que le serveur fonctionne.

Sous le capôt, votre serveur web utilise le protocoal HTTP pour afficher les fichiers situés sur votre ordinateur.

Avec cet exemple, Apache affiche un fichier nommé index.html qui est placé dans un sous-répertoire des dossiers Apache. Il nous sera utile, notammment par la suite des usages, d’utiliser un répertoire par choix.

Préparons le terrain

Tout d’abord, créons un dossier puis amenpns le serveur web à pointer vers ce répertoire :

dans votre terminal un dossier appelé htdocs dans votre répertoire utilisateur : /home/NomUtilisateur/htdocs, où NomUtilisateur correspond à votre nom d’utilisateur.

sudo mkdir /home/NomUtilisateur/htdocs

configurons rapidement

Sans prétention aucune, car ce n’est que le minimun vital.

Dans un ternimal :

cd /etc/apache2/sites-available/

Dans ce fichier et à la ligne suivante : DocumentRoot /var/www/html. Modifiez cette line afin que le répertoire corresponde au répertoire de travail htdocs : DocumentRoot /home/NomUtilisateur/htdocs

sudo nano 000-default.conf 

Ajoutons des restrictions d’accès aux fichiers. Pour cela, ajoutez les lignes suivantes sous la ligne avec DocumentRoot, changer USERNAME avec votre nom d’utilisateur.

  <Directory />
            Options FollowSymLinks
            AllowOverride None
            Require all denied
    </Directory>
    <Directory /home/USERNAME/htdocs/>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride None
            Require all granted
    </Directory>

Puis sauvegarder : [cltr]+[x] puis [o] puis [enter]

On redémarre ce serveur

Redémarrez Apache

sudo apachectl restart

Si nécessaire, entrez votre mot de passe.

Rechargez la page localhost dans votre navigteur. Vous devriez voir l’index du répertoire. Sinon vérifiez vos démarches précédentes.

Vous en avez fini avec les pieds… Vous pouvez mainteant jouer et continuer à apprendre en faisant des petits bouts de trucs.

Vous pouvez ausi passer aux mains dans le cambouis.

Message dans le terminal

Si lors du restart si vous avez dans le terminal la réponse :

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. 
Set the 'ServerName' directive globally to suppress this message

Ce n’est qu’un avertissement amical et pas vraiment un problème (car quelque chose ne fonctionne pas).

Corrigeons cela

Utilisez un éditeur de texte tel que sudo nano dans le terminal pour créer un nouveau fichier,

sudo nano /etc/apache2/conf.d/fqdn

puis ajoutons au fichier

ServerName localhost

Sauvegardez. Tout cela peut aussi être fait en une seule commande avec les commandes suivantes:

 echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/fqdn.conf
 sudo a2enconf fqdn

N’oubliez pas le “.conf” (sans cela ne marchera pas).

Puis sudo service apache2 restart

Soyez plus curieuses et curieux et précis.e.s

Le fonctionnement de localhost

Sur l’univers du DNS, il existe une adresse spéciale connue par chaque ordinateur : localhost. Celle-ci fait référence au serveur situé sur l’ordinateur en question. Ainsi, il est possible d’accéder à un site situé sur localhost avec votre navigateur, même sans connexion à Internet.

Pour être un poil plus précis, localhost pointe vers une adresse IP dirigeant vers votre propre machine : 127.0.0.1 (IPv4) ou ::1 (IPv6. Le nom localhost est associé à l’adresse èIPv6 ::1è et à la plage d’adresses èIPv4 127.0.0.0/8è (toutes les adresses IPv4 comprises entre 127.0.0.1 et 127.255.255.255 dont la plus utilisée est 127.0.0.1).

Consultez par exemple

  1. Mettre en place un environnement de travail, chez mozilla
  2. HTTPD - serveur web Apache2 chez ubuntu
  3. Compilation et installation, chez Apache.org

Nous pouvons auusi faire cela ensemble lors d’une randonnée à Rennes le 21 mars, et un tas d’autres choses : inscriptions.

Toujours avec les pieds

Tips

Vous avez des suggestions, des modifications, ou vous voulez réutiliser ce billet ? Il est sous licence libre voir et accessible via github.

Il vous a été utile ? Un petit coup de dons sur l’icone jaune en bas à droite sera apprécié ^^

Merci à toutes les personnes qui soutiennent les efforts par leurs dons


Xavier Coadic

Xavier Coadic

Human Collider

rss framagit twitter github mail linkedin stackoverflow