Tutorial

Comment installer la pile Linux, Apache, MySQL, PHP (LAMP) sur Ubuntu 20.04 [Démarrage rapide]

Published on May 28, 2020
Default avatar

By Erika Heidi

Developer Advocate

Français
Comment installer la pile Linux, Apache, MySQL, PHP (LAMP) sur Ubuntu 20.04 [Démarrage rapide]

Introduction

Dans ce guide de démarrage rapide, nous allons installer une pile LAMP sur un serveur Ubuntu 20.04.

Pour une version plus détaillée de ce tutoriel, avec plus d’explications sur chaque étape, veuillez vous référer à Comment installer la pile Linux, Apache, MySQL, PHP (LAMP) sur Ubuntu 20.04.

Conditions préalables

Pour suivre ce guide, vous devrez avoir accès à un serveur Ubuntu 20.04 en tant qu’utilisateur sudo.

Étape 1 — Installer Apache

Mettez à jour le cache de votre gestionnaire de paquets et installez ensuite Apache avec :

  1. sudo apt update
  2. sudo apt install apache2

Une fois l’installation terminée, vous devrez ajuster les paramètres de votre pare-feu pour autoriser le trafic HTTP sur votre serveur. Exécutez la commande suivante pour autoriser l’accès externe sur le port 80 (HTTP) :

  1. sudo ufw allow in "Apache"

Avec l’ajout de la nouvelle règle de pare-feu, vous pouvez vérifier si le serveur est opérationnel en accédant à l’adresse IP publique ou au nom de domaine de votre serveur depuis votre navigateur web. Vous verrez une page comme celle-ci :

Ubuntu 20.04 Apache par défaut 

Étape 2 – Installer MySQL

Nous allons maintenant installer MySQL, un système de gestion de base de données très répandu utilisé dans les environnements PHP.

Là encore, utilisez apt pour acquérir et installer ce logiciel :

  1. sudo apt install mysql-server

Une fois l’installation terminée, il est recommandé d’exécuter un script de sécurité qui vient préinstallé avec MySQL. Lancez le script interactif en exécutant :

  1. sudo mysql_secure_installation

Il vous sera demandé si vous souhaitez configurer le VALIDATE PASSWORD PLUGIN. Répondez Y pour oui, ou tout autre chose pour continuer sans activer. Si vous répondez « oui », il vous sera demandé de choisir un niveau de validation du mot de passe.

Votre serveur vous demandera ensuite de sélectionner et de confirmer un mot de passe pour l’utilisateur root de MySQL. Même si la méthode d’authentification par défaut pour l’utilisateur root de MySQL dispense de l’utilisation d’un mot de passe, même si celui-ci est défini, vous devez définir ici un mot de passe fort pour plus de sécurité.

Pour le reste des questions, appuyez sur Y et appuyez sur la touche ENTRÉE à chaque invite.

Note : Au moment de la rédaction de ce document, la bibliothèque MySQL PHP native mysqlnd ne prend pas en charge caching_sha2_authentification,la méthode d’authentification par défaut pour MySQL 8. Pour cette raison, lorsque vous créez des utilisateurs de base de données pour des applications PHP sur MySQL 8, vous devez vous assurer qu’ils sont configurés pour utiliser le mot de passe mysql_native_password à la place. Veuillez vous référer à l’étape 6 de notre guide détaillé LAMP sur Ubuntu 20.04 pour apprendre comment le faire.

Étape 3 – Installer PHP

Pour installer PHP et ses dépendances, exécutez :

  1. sudo apt install php libapache2-mod-php php-mysql

Une fois l’installation terminée, vous pouvez exécuter la commande suivante pour confirmer votre version de PHP :

  1. php -v
Output
PHP 7.4.3 (cli) (built: Mar 26 2020 20:24:23) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies

Étape 4 – Création d’un hôte virtuel pour votre site web

Dans ce guide, nous allons mettre en place un domaine appelé your_domain, mais vous devez le remplacer par votre propre nom de domaine.

Apache sur Ubuntu 20.04 a un bloc serveur activé par défaut qui est configuré pour servir des documents à partir du répertoire /var/www/html. Au lieu de modifier /var/www/html, nous allons créer une structure de répertoire au sein de /var/www pour le site your_domain, en laissant/var/www/html en place comme répertoire par défaut à servir si une demande du client ne correspond à aucun autre site.

Créez le répertoire pour your_domain comme suit :

  1. sudo mkdir /var/www/your_domain

Ensuite, attribuez la propriété du répertoire avec la variable d’environnement $USER qui fera référence à votre utilisateur actuel du système :

  1. sudo chown -R $USER:$USER /var/www/your_domain

Ensuite, ouvrez un nouveau fichier de configuration dans le répertoire sites-available d’Apache en utilisant votre éditeur de ligne de commande préféré :

  1. sudo nano /etc/apache2/sites-available/your_domain.conf

Cela créera un nouveau fichier vierge. Collez dans la configuration suivante :

/etc/apache2/sites-available/your_domain.conf
<VirtualHost *:80>
    ServerName your_domain
    ServerAlias www.your_domain
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/your_domain
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Enregistrez et fermez le fichier lorsque vous avez fini de le modifier. Si vous utilisez nano, vous pouvez le faire en appuyant sur CTRL+X, puis sur Y et sur ENTER.

Vous pouvez désormais utiliser a2ensite pour activer le nouvel hôte virtuel :

  1. sudo a2ensite your_domain

Pour désactiver le site web par défaut d’Apache, tapez :

  1. sudo a2dissite 000-default

Pour vous assurer que votre fichier de configuration ne contient pas d’erreurs de syntaxe, exécutez :

  1. sudo apache2ctl configtest

Enfin, relancez Apache pour que ces changements prennent effet :

  1. sudo systemctl reload apache2

Votre nouveau site web est maintenant actif, mais le root web /var/www/your_domain est toujours vide. Créez un fichier index.html à cet endroit afin que nous puissions vérifier que l’hôte virtuel fonctionne comme prévu :

  1. nano /var/www/your_domain/index.html

Incluez le contenu suivant dans ce dossier :

/var/www/your_domain/index.html
<html>
  <head>
    <title>your_domain website</title>
  </head>
  <body>
    <h1>Hello World!</h1>

    <p>This is the landing page of <strong>your_domain</strong>.</p>
  </body>
</html>

Now open your browser and access the domain name or IP address of your server on port 8000 :

http://server_domain_or_IP

Vous verrez une page comme celle-ci :

Test de l'hôte virtuel Apache

Étape 5 – Tester PHP avec Apache

Nous allons maintenant créer un script de test PHP pour confirmer qu’Apache est capable de gérer et de traiter les demandes de fichiers PHP.

Créer un nouveau fichier nommé info.php à l’intérieur de votre dossier root web personnalisé :

  1. nano /var/www/your_domain/info.php

Cela ouvrira un fichier vierge. Ajoutez le contenu suivant dans le fichier :

/var/www/your_domain/info.php
<?php
phpinfo();

Lorsque vous avez terminé, enregistrez et fermez le fichier.

Allez dans votre navigateur web et accédez au nom de domaine ou à l’adresse IP de votre serveur, suivi du nom du script, qui est dans ce cas info.php

http://server_domain_or_IP/info.php

Vous verrez une page similaire à celle-ci :

Ubuntu 20.04 PHP info 

Après avoir vérifié les informations pertinentes sur votre serveur PHP par le biais de cette page, il est préférable de supprimer le fichier que vous avez créé car il contient des informations sensibles sur votre environnement PHP — et votre serveur Ubuntu. Pour ce faire, vous pouvez utiliser rm :

  1. sudo rm /var/www/your_domain/info.php

Tutoriels connexes

Voici des liens vers des guides plus détaillés relatifs à ce tutoriel :

Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.

Learn more about us


About the authors
Default avatar

Developer Advocate

Dev/Ops passionate about open source, PHP, and Linux.

Still looking for an answer?

Ask a questionSearch for more help

Was this helpful?
 
Leave a comment


This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Try DigitalOcean for free

Click below to sign up and get $200 of credit to try our products over 60 days!

Sign up

Join the Tech Talk
Success! Thank you! Please check your email for further details.

Please complete your information!

Get our biweekly newsletter

Sign up for Infrastructure as a Newsletter.

Hollie's Hub for Good

Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.

Become a contributor

Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.

Welcome to the developer cloud

DigitalOcean makes it simple to launch in the cloud and scale up as you grow — whether you're running one virtual machine or ten thousand.

Learn more
DigitalOcean Cloud Control Panel