fbpx

En cette époque de démocratisation d’Internet, avoir un site web est devenu presque aussi banal qu’avoir un téléphone mobile. Pour peu que l’intérêt soit là, il est devenu possible (plus facile) pour la grande majorité des gens de les avoir ou créer. Les prix, les outils et même le matériel sont accessibles, parfois même gratuits.

Aujourd’hui, nous verrons comment procéder pour installer un serveur web apache sur son poste Linux.

Serveur Web

Un serveur web peut être simplement défini comme un ensemble de logiciels qui permettent de diffuser, rendre disponible un site web aux autres. Dans la grande majorité des cas, les autres seront sur Internet. Mais dans certains cas, ces autres seront localisés dans un réseau interne et fermé. Et parfois, comme aujourd’hui, les autres, ce sera nous.

Un Serveur Web en Local. Pourquoi faire?

Quand on pense Web, c’est souvent dirigé consciemment ou non vers autrui, vers l’extérieur. On cherche à publier des informations, des médias, et les rendre disponibles pour que le plus grand nombre les voie, lise, commente, crache leur haine ou déclare leur flamme.

Dans ce cas, quel intérêt peut-il bien y avoir à déployer un tel système en local? En vérité, les raisons sont nombreuses, suivant les utilisations que l’on compte en faire. Mais on peut citer

  • le besoin de faire des tests,
  • la nécessité de conserver privée ou restreinte la diffusion de certaines données,
  • etc.

Les forces en présence

Comme d’habitude, sur Linux, les options sont nombreuses, lorsqu’on veut mettre en place une fonctionnalité. Il existe une variété de serveurs web, les uns plus ou moins compétents que les autres, suivant les contextes. Un des plus populaires reste toutefois Apache.

Pour installer Apache sur son système, sur un système parent (ou enfant) de Debian, il faudra donc

  • s’assurer que son système est à jour (les dépôts de logiciels tout au moins)
sudo apt update
  • installer le paquet Apache2 qui apportera les joies d’être serveur Web à votre système bien aimé
sudo apt-get install apache2
  • s’assurer que le serveur web a été bien installé est est actif. En effet, il pourrait arriver que certains conflits entre paquets ou services, ou même des configurations empêchent votre serveur de bien fonctionner
sudo systemctl status apache2
  • tester la bonne marche du serveur dans un navigateur web
    • ouvrir un onglet de votre navigateur web préféré
    • dans la zone des URLs, saisir l’adresse http://localhost
    • dans le cas où localhost ne produit aucun résultat motivant
      • identifier le nom précis de votre système
        • se rendre dans un terminal
        • saisir la commande hostname
        • bien prendre en note le nom de votre système qui va être affiché
        • se rendre dans la barre d’adresse de votre navigateur web
        • saisir l’adresse URL http://[NomDeVotreSysteme]
      • si vous obtenez un résultat semblable à celui-ci, c’est que vous êtes sur la bonne voie
  • configurer les bonnes permissions dans le dossier accueillant vos projets web

Dans la plupart des configurations par défaut, le dossier où seront conservés vos projets web sous linux sera /var/www. Or il se trouve que se dossier est la propriété de l’utilisateur root. Si cela permet de garantir un certain niveau de sécurité, cela peut devenir vite frustrant dans le cas où vous effectuez des modifications régulières dans le dossier, en raison des mots de passe qu’il vous faudra fournir à chaque modification ou presque. C’est sans parler de certaines actions de votre système qui ne fonctionneront probablement pas.

Permissions par défaut du dossier /var/www après l'installation de Apache2 - Soka Wakata
Par défaut, le dossier /var/www est la propriété exclusive de root…

Pour corriger cette situation, nous allons

  • rajouter l’utilisateur courant dans le groupe www-data, responsable de la grande majorité des processus web
sudo adduser $USER www-data
  • changer le propriétaire du dossier /var/www de root à la paire utilisateur actif / groupe www-data
sudo chown -R $USER:www-data /var/www/*
  • affecter les permissions 755 au dossier /var/www et l’ensemble de son contenu. Ces permissions impliquent que
    • le propriétaire (vous), pouvez tout, tout!
    • le groupe associé (www-data) et ses membres peuvent lire les informations des dossiers et les exécuter, au besoin
    • tout autre individu ne faisant pas partie d’un des groupes précédents peut juste exécuter
sudo chmod -R 755 /var/www

Bien entendu, ces permissions seront à adapter suivant la nature et la criticité du projet sur lequel vous travaillez.


Sous Manjaro

Sous Manjaro Linux et les distributions orientées Arch, la séquence sera globalement la même. Seule la syntaxe différera vraiment :

pacman -Syu

Mise à jour de la distribution

pacman -S apache

Installation du paquet Apache

systemctl enable httpd

systemctl restart httpd

systemctl status httpd

Activation du service au démarrage, puis vérification de son statut

Une autre différence majeure sur Manjaro est que le dossier web où seront abritées les projets web sera plutôt /srv/http, au lieu de /var/www comme dans les déclinaisons de Debian.

Il faudra donc ajuster les permissions afin d’avoir un processus de création fluide.


Pour en savoir plus, retrouvez des contenus gratuits plus extensifs

Sur YouTube
Créez un Serveur Web et Site WordPress pas-à-pas - Soka Wakata
Dans notre Boutique (GRATUIT)

Soka!