- 1 1. Introduction
- 2 2. Prérequis et préparation
- 3 3. Comment installer PHP
- 4 4. Vérifier l’installation de PHP
- 5 5. Installation des modules PHP les plus courants
- 6 6. Gestion et basculement entre les versions de PHP
- 7 7. Configuration de l’intégration avec Apache et Nginx
- 8 8. Dépannage
- 9 9. Conclusion
- 10 10. Foire aux questions (FAQ)
- 10.1 Q1. Comment installer la dernière version de PHP sur Ubuntu ?
- 10.2 Q2. Comment basculer de version PHP en CLI ?
- 10.3 Q3. Apache affiche mon fichier PHP en texte brut au lieu de l’exécuter.
- 10.4 Q4. Où se trouve le fichier de configuration PHP (php.ini) ?
- 10.5 Q5. Comment activer une extension PHP ?
- 10.6 Q6. PHP ne fonctionne pas correctement avec Nginx. Que vérifier ?
- 10.7 Q7. Les erreurs PHP ne s’affichent pas à l’écran.
1. Introduction
Pourquoi utiliser PHP sur Ubuntu ?
PHP est un langage de script côté serveur largement utilisé dans de nombreuses applications web, dont WordPress. Il est un standard du développement web depuis de nombreuses années, alimentant de nombreux CMS et frameworks.
Ubuntu est une distribution Linux très stable, prisée des développeurs du monde entier et particulièrement adaptée à un usage serveur. L’association Ubuntu + PHP est largement adoptée, des projets personnels aux environnements de production d’entreprise.
À qui s’adresse cet article et quel est son objectif
Ce guide s’adresse à tout le monde, des débutants — qui souhaitent installer PHP sur Ubuntu mais ne savent pas par où commencer — aux utilisateurs intermédiaires qui veulent installer une version précise de PHP. Nous proposons des instructions claires, étape par étape.
Nous utilisons Ubuntu 22.04 LTS comme environnement d’exemple, mais les étapes sont généralement similaires pour les autres versions.
Ce que vous apprendrez dans cet article
En lisant ce guide, vous serez capable de comprendre et d’exécuter les tâches suivantes :
- Méthodes de base pour installer PHP sur Ubuntu
- Comment installer et basculer entre plusieurs versions de PHP
- Comment vérifier que PHP fonctionne et dépanner les problèmes
- Comment configurer l’intégration avec Apache ou Nginx
- Comment installer les modules PHP les plus courants
2. Prérequis et préparation
Comment vérifier votre version d’Ubuntu
Commencez par vérifier quelle version d’Ubuntu vous utilisez. Les étapes d’installation et les modules PHP disponibles peuvent légèrement varier selon votre version d’Ubuntu.
Vous pouvez vérifier votre version d’Ubuntu avec la commande :
lsb_release -a
Vous pouvez également utiliser la commande suivante :
cat /etc/os-release
Cet article est basé sur Ubuntu 22.04 LTS, mais la procédure de base s’applique aussi à 20.04 et 23.10.
Garder vos paquets système à jour
Avant d’installer PHP, il est essentiel de mettre à jour vos paquets système vers les dernières versions. Cela évite les problèmes de dépendances ou les incohérences. Mettez à jour avec les commandes suivantes :
sudo apt update
sudo apt upgrade -y
Cela rafraîchit l’index des paquets APT, garantissant que vous installez les versions les plus récentes.
Installer les utilitaires requis
Lorsque vous installez certaines versions de PHP, vous aurez besoin du paquet software-properties-common pour ajouter des dépôts et gérer les paquets. S’il n’est pas déjà installé, faites :
sudo apt install -y software-properties-common
Ce paquet est nécessaire pour des commandes comme add-apt-repository, notamment lorsqu’on utilise un PPA (Personal Package Archive) pour installer des versions spécifiques de PHP.
Utiliser les privilèges root ou sudo
La plupart des étapes de cet article impliquent des modifications système, vous devrez donc utiliser sudo avec vos commandes. Si vous n’êtes pas familier avec sudo, revoyez les bases de la commande sudo avant de continuer.
3. Comment installer PHP
Il existe deux méthodes principales pour installer PHP sur Ubuntu : en utilisant le dépôt par défaut, ou en spécifiant une version via un PPA (Personal Package Archive). Nous parcourrons les deux méthodes.
Installation de PHP depuis le dépôt par défaut
Le dépôt par défaut d’Ubuntu fournit des versions stables de PHP. Si vous n’avez pas besoin d’une version précise, exécutez simplement :
sudo apt install -y php
Après l’installation, vérifiez que PHP est correctement installé :
php -v
Exemple :
PHP 8.1.2 (cli) (built: ...)
Sur Ubuntu 22.04, PHP 8.1 est fourni par défaut.
Installation d’une version spécifique via un PPA
Si vous voulez la dernière version de PHP ou devez gérer plusieurs versions, vous pouvez ajouter le PPA de confiance ondrej/php et spécifier la version souhaitée.
Étape 1 : Ajouter le dépôt PPA
sudo add-apt-repository ppa:ondrej/php
sudo apt update
Ce dépôt est largement utilisé dans la communauté Ubuntu et propose des builds stables pour toutes les principales versions de PHP.
Étape 2 : Installer la version de PHP désirée
Par exemple, pour installer PHP 8.2 :
sudo apt install -y php8.2
Vous pouvez également installer d’autres versions comme PHP 7.4 ou 8.0 de la même façon.
Étape 3 : Vérifier la version installée
php -v
Si la version spécifique a été installée avec succès, elle s’affichera ici.
4. Vérifier l’installation de PHP
Une fois PHP installé, assurez‑vous qu’il fonctionne. Sous Ubuntu, vous pouvez le vérifier via la ligne de commande (CLI) et également via votre serveur web (Apache ou Nginx). Voici comment :
Vérification via la ligne de commande (CLI)
Affichez la version de PHP dans le terminal pour confirmer que PHP fonctionne :
php -v
Si vous voyez la version et les informations de build, PHP fonctionne en CLI.
Exemple de sortie :
PHP 8.2.10 (cli) (built: Aug 23 2023 08:12:10) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.2.10, Copyright (c) Zend Technologies
Vérification via le serveur web (exemple avec Apache)
Si vous utilisez Apache, créez une page de test contenant la fonction phpinfo() pour vérifier que PHP fonctionne avec Apache.
1. Créer le fichier de test
Créez un fichier PHP dans votre répertoire web Apache (généralement /var/www/html) avec :
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
2. Vérifier dans votre navigateur
Accédez au fichier dans votre navigateur. Sur votre machine locale, visitez :
http://localhost/info.php
3. Examiner la sortie
Si vous voyez les informations détaillées de PHP, alors PHP fonctionne via Apache.
🔍 Astuce : Comme
phpinfo()peut afficher des informations sensibles, supprimez le fichierinfo.phpaprès vérification.
sudo rm /var/www/html/info.php
Vérification avec Nginx + PHP‑FPM
Si vous utilisez Nginx, PHP s’exécute via php-fpm. Assurez‑vous que Nginx est configuré pour gérer les fichiers .php, puis créez info.php comme ci‑dessus. Si vous obtenez une erreur 500 ou une invite de téléchargement, vérifiez votre configuration Nginx, en particulier fastcgi_pass et include fastcgi-php.conf;.
5. Installation des modules PHP les plus courants
L’installation de base de PHP ne comprend pas toutes les fonctionnalités. Beaucoup sont fournies sous forme de modules (extensions) qui doivent être installés au besoin. Nous présentons ici les modules PHP essentiels pour le développement et la production.
Que sont les modules PHP ?
Les modules (ou extensions) PHP ajoutent des fonctionnalités comme la connexion à une base de données, le traitement multibyte, la manipulation d’images ou le traitement XML.
Les modules sont disponibles sous forme de paquets APT et peuvent être installés ainsi :
sudo apt install php-[nom‑module]
Pour spécifier une version, utilisez par exemple php8.2-mbstring.

Modules PHP clés et leurs usages
php-mbstring (support des chaînes multibytes)
Nécessaire pour gérer les caractères multibytes comme le japonais. Indispensable pour les sites japonais ou le traitement d’e‑mails.
sudo apt install php-mbstring
php-mysql (connectivité MySQL/MariaDB)
Permet de se connecter aux bases de données MySQL ou MariaDB. Requis pour des applications comme WordPress qui utilisent une base de données.
sudo apt install php-mysql
php-gd (traitement d’images)
Gère la création, la conversion et le redimensionnement d’images ; utilisé pour générer des captures d’écran ou des miniatures.
sudo apt install php-gd
php-xml (traitement XML)
Nécessaire pour manipuler des données basées sur XML comme les flux RSS ou SOAP. Utilisé dans les CMS et pour l’intégration d’API.
sudo apt install php-xml
php-curl (communication HTTP)
Utilisé pour envoyer des requêtes HTTP, par exemple lors de l’intégration avec des API externes. Très répandu dans les frameworks modernes.
sudo apt install php-curl
php-zip (gestion des fichiers ZIP)
Permet de compresser et d’extraire des archives ZIP ; utile pour les fonctionnalités d’upload de fichiers.
sudo apt install php-zip
Activer les modules et redémarrer les services
Certains modules nécessitent d’être explicitement activés après l’installation. Utilisez phpenmod comme suit :
sudo phpenmod [nom‑module]
sudo systemctl restart apache2
Les changements prennent effet après le redémarrage de votre serveur web.
6. Gestion et basculement entre les versions de PHP
Ubuntu vous permet d’installer et d’utiliser plusieurs versions de PHP sur un même serveur. C’est pratique lorsqu’on héberge plusieurs applications ou que l’on développe dans différents environnements. Voici comment basculer de version en CLI et avec Apache.
Basculement de version en CLI
Commande : update-alternatives
Utilisez update-alternatives pour changer facilement la version de PHP utilisée en CLI.
Étape 1 : Lister les versions de PHP installées
ls /usr/bin/php*
Étape 2 : Enregistrer les versions avec update-alternatives (première fois seulement)
sudo update-alternatives --install /usr/bin/php php /usr/bin/php7.4 74
sudo update-alternatives --install /usr/bin/php php /usr/bin/php8.2 82
Étape 3 : Sélectionner la version à utiliser
sudo update-alternatives --config php
Vous verrez un écran de sélection similaire à :
There are 2 choices for the alternative php (providing /usr/bin/php).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/php8.2 82 auto mode
1 /usr/bin/php7.4 74 manual mode
2 /usr/bin/php8.2 82 manual mode
Press <enter> to keep the current choice[*], or type selection number:
Tapez le numéro correspondant à la version souhaitée puis appuyez sur Entrée.
Étape 4 : Confirmer la version
php -v
Basculement de version avec Apache
Avec Apache, vous pouvez activer ou désactiver les modules PHP par version. Voici comment choisir votre version préférée :
1. Lister les modules disponibles
ls /etc/apache2/mods-available | grep php
2. Désactiver le module actuel
sudo a2dismod php7.4
3. Activer la version désirée
sudo a2enmod php8.2
4. Redémarrer Apache
sudo systemctl restart apache2
Cela applique vos changements à la fois en CLI et pour Apache.
7. Configuration de l’intégration avec Apache et Nginx
PHP devient vraiment puissant lorsqu’il est intégré à un serveur web. Sous Ubuntu, vous utiliserez généralement Apache ou Nginx. Voici comment connecter PHP aux deux.
Configuration d’Apache (mod_php)
Avec Apache, le module mod_php permet d’exécuter directement les scripts PHP. C’est simple à mettre en place, ce qui en fait un bon choix pour WordPress et d’autres CMS.
Étape 1 : Installer Apache et mod_php
sudo apt install -y apache2 libapache2-mod-php
Avec libapache2-mod-php installé, Apache peut traiter les fichiers PHP.
Étape 2 : Redémarrer Apache
sudo systemctl restart apache2
Étape 3 : Tester avec un fichier PHP
Créez un fichier test.php dans /var/www/html et ouvrez‑le dans votre navigateur :
<?php
phpinfo();
?>
URL d’exemple :
http://localhost/test.php
Configuration de Nginx (PHP‑FPM)
Nginx est léger et rapide, mais ne peut pas traiter PHP directement. Vous utiliserez PHP‑FPM (FastCGI Process Manager) pour le support PHP.
Étape 1 : Installer Nginx et PHP‑FPM
sudo apt install -y nginx php-fpm
Étape 2 : Modifier le fichier de configuration Nginx
Éditez /etc/nginx/sites-available/default (ou votre configuration de virtual host) :
sudo nano /etc/nginx/sites-available/default
Ajoutez ou mettez à jour ce bloc :
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
}
Étape 3 : Redémarrer Nginx
sudo systemctl restart nginx
Étape 4 : Tester avec un fichier PHP
Créez /var/www/html/test.php et vérifiez dans votre navigateur, comme pour Apache.
Note : Paramètres du pare‑feu (si nécessaire)
Si vous utilisez UFW (Uncomplicated Firewall), autorisez l’accès avec :
sudo ufw allow 'Apache Full'
# ou
sudo ufw allow 'Nginx Full'
Apache est facile à configurer, tandis que Nginx offre de hautes performances. Choisissez ce qui convient le mieux et assurez‑vous que l’intégration PHP est correctement configurée.
8. Dépannage
Parfois, PHP ne fonctionne pas comme prévu, même après l’installation et l’intégration au serveur. Cette section couvre les problèmes courants, leurs causes et leurs solutions.
PHP ne fonctionne pas (le code source s’affiche dans le navigateur)
Cause
Cela se produit lorsque Apache ou Nginx renvoie le fichier PHP en texte brut au lieu de l’exécuter. Le module PHP ou les paramètres FastCGI ne sont probablement pas correctement configurés.
Solution
- Pour Apache :
Vérifiez quelibapache2-mod-phpest installé et activé, puis redémarrez Apache.
sudo apt install libapache2-mod-php
sudo systemctl restart apache2
- Pour Nginx :
Vérifiez quephp-fpmest installé et que la configuration Nginx contient le bonfastcgi_passet les bonnes directives.
sudo systemctl restart php8.2-fpm
sudo systemctl restart nginx
Certaines fonctionnalités PHP ne fonctionnent pas (fonctions indéfinies)
Cause
En général, le module PHP requis n’est pas installé ou activé.
Solution
- Installez le(s) module(s) nécessaire(s), par exemple
mbstring,xmloucurl:
sudo apt install php-mbstring php-xml php-curl
- Après avoir activé un module, redémarrez votre serveur web.
sudo systemctl restart apache2 # ou nginx
- Vérifiez les modules activés avec :
php -m
Les erreurs PHP ne s’affichent pas
Cause
Par défaut, les messages d’erreur PHP peuvent être désactivés.
Solution
Modifiez php.ini et activez l’affichage des erreurs :
sudo nano /etc/php/8.2/apache2/php.ini
Recherchez et définissez :
display_errors = On
error_reporting = E_ALL
Puis redémarrez votre serveur web :
sudo systemctl restart apache2
Comment consulter les journaux d’erreurs
Pour Apache :
/var/log/apache2/error.log
Pour Nginx :
/var/log/nginx/error.log
Pour PHP‑FPM (avec Nginx) :
/var/log/php8.2-fpm.log
Surveillez ces journaux pour le dépannage :
sudo tail -f /var/log/apache2/error.log
Lorsque des erreurs surviennent, souvenez‑vous : Vérifier les journaux → Revoir la configuration → Redémarrer le serveur. Restez calme et dépannez étape par étape.
9. Conclusion
Cet article a expliqué—des bases aux étapes avancées—comment installer PHP sur Ubuntu. Voici les points clés et les prochaines étapes à explorer.
Résumé des points essentiels
- Vérifier la version d’Ubuntu et préparer le système
Vérifier votre version d’OS et mettre à jour les paquets est crucial pour une installation fluide de PHP. - Deux façons d’installer PHP
Installation simple depuis le dépôt par défaut, ou via un PPA pour des versions spécifiques. - Vérifier après l’installation
Utilisezphp -vetphpinfo()pour tester PHP en CLI et en contexte web. - Étendre les fonctionnalités avec les modules
Installez les modules courants commephp-mbstringetphp-mysqlselon vos besoins. - Basculer entre plusieurs versions
Gérez facilement les versions avecupdate-alternativesou le basculement des modules Apache. - Intégration correcte avec Apache/Nginx
Une configuration adaptée à votre serveur web assure un fonctionnement stable. - Consulter les journaux pour le dépannage
En cas de problème, la lecture des journaux d’erreurs est la première étape la plus efficace.
Prochaines étapes d’apprentissage
Après avoir installé PHP sur Ubuntu, vous pouvez approfondir les sujets suivants :
- Installation de MySQL (MariaDB) et connexion aux bases de données
- Installation et configuration de WordPress
- Utilisation de frameworks PHP comme Laravel
- Activation du HTTPS (certificats SSL avec Let’s Encrypt)
- Gestion du démarrage automatique et des redémarrages (systemd)
Avec ces connaissances, vous pourrez créer des services web encore plus avancés. Ubuntu et PHP offrent ensemble un environnement de développement open‑source robuste et flexible. Utilisez cet article comme base pour passer à de nouveaux projets !
10. Foire aux questions (FAQ)
Cette FAQ couvre les obstacles courants et les questions que les utilisateurs recherchent souvent lorsqu’ils installent ou configurent PHP sur Ubuntu. Les réponses restent simples et pratiques, même pour les débutants.
Q1. Comment installer la dernière version de PHP sur Ubuntu ?
R1.
La version la plus récente de PHP n’est pas toujours dans le dépôt par défaut d’Ubuntu. Ajoutez le PPA fiable ondrej/php, puis installez la version souhaitée.
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php8.2
Q2. Comment basculer de version PHP en CLI ?
R2.
Si plusieurs versions sont installées, utilisez update-alternatives pour changer de version.
sudo update-alternatives --config php
Entrez le numéro correspondant à la version désirée dans la liste affichée.
Q3. Apache affiche mon fichier PHP en texte brut au lieu de l’exécuter.
R3.
Cela signifie qu’Apache ne traite pas le PHP. Vérifiez que le module libapache2-mod-php est activé et redémarrez Apache :
sudo apt install libapache2-mod-php
sudo systemctl restart apache2
Q4. Où se trouve le fichier de configuration PHP (php.ini) ?
R4.
Il existe des fichiers distincts pour le CLI et le serveur web. Les emplacements courants sont :
- Pour Apache :
/etc/php/8.2/apache2/php.ini - Pour le CLI :
/etc/php/8.2/cli/php.ini
La partie « 8.2 » varie selon votre version de PHP.
Q5. Comment activer une extension PHP ?
R5.
Après l’installation, activez le module avec phpenmod :
sudo phpenmod mbstring
sudo systemctl restart apache2
Redémarrez votre serveur web après l’activation.
Q6. PHP ne fonctionne pas correctement avec Nginx. Que vérifier ?
R6.
Nginx nécessite php-fpm pour traiter le PHP. Assurez‑vous que votre configuration inclut le bon fastcgi_pass :
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
}
Adaptez le chemin du socket à votre version de PHP.
Q7. Les erreurs PHP ne s’affichent pas à l’écran.
R7.
Dans php.ini, display_errors peut être désactivé. Pour le développement, activez‑le ainsi :
display_errors = On
error_reporting = E_ALL
Redémarrez votre serveur web après modification.
Ces FAQ vous aideront à éviter les pièges courants lors de l’utilisation de PHP sur Ubuntu. Gardez ces informations à portée de main pour un dépannage plus fluide !


