Maxime Pinot

Installer la dernière version de PHP sur Ubuntu pour Windows (WSL)

La dernière version de PHP n’est souvent pas disponible immédiatement dans les dépôts d’Ubuntu. Encore moins sous Ubuntu sur Windows (WSL: Windows Subsytem for Linux) où la version installée est souvent la version LTS (Long Term Support).

Pour installer la dernière version de PHP, il faut passer par le dépôt ondrej/php.

Ajout automatique du dépôt

Rien de compliqué, exécutons simplement la commande suivante :

1sudo add-apt-repository ppa:ondrej/php

Si le dépôt s’est correctement ajouté, vous avez de la chance ! Vous pouvez vous rendre directement à la partie “Installation de PHP”.

Si vous rencontrez l’erreur ci-dessous, il faut ajouter le dépôt manuellement.

Cannot add PPA: 'ppa:~ondrej/ubuntu/php'.
ERROR: '~ondrej' user or team does not exist.

Ajout manuel du dépôt

Il faut modifier le fichier /etc/apt/sources.list.

1sudo vim /etc/apt/sources.list

Ajoutez les deux lignes suivantes à la fin du fichier :

deb http://ppa.launchpad.net/ondrej/php/ubuntu bionic main
deb-src http://ppa.launchpad.net/ondrej/php/ubuntu bionic main

Remarque : ces deux lignes sont à utiliser si vous utilisez Ubuntu 18.04 (Bionic) ou Ubuntu 18.10 LTS. Remplacez “bionic” par le nom de votre version Ubuntu. Il suffit de regarder dans les lignes déjà existantes du fichier /etc/apt/sources.list.

Sauvegardez la modification du fichier (`:wq sur vim) et rafraichissez les dépôts :

1sudo apt-get update

Encore une erreur !!

Hit:5 http://security.ubuntu.com/ubuntu bionic-security InRelease
Get:1 http://ppa.launchpad.net/ondrej/php/ubuntu bionic InRelease [20.8 kB]
Err:1 http://ppa.launchpad.net/ondrej/php/ubuntu bionic InRelease
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 4F4EA0AAE5267A6C

Pour résoudre ce problème, exécutez la commande suivante :

1sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4F4EA0AAE5267A6C

Vous remarquerez que le dernier paramètre de la commande correspond à la clé présente dans le message d’erreur (`4F4EA0AAE5267A6C). Il faut donc modifier la commande en conséquence si votre message d’erreur contient une clé différente.

Si vous souhaitez plus d’informations sur ce problème, consultez cet article (en anglais): Fix apt-get update “the following signatures couldn’t be verified because the public key is not available”.

Une fois cette commande exécutée, rafraichissez une nouvelle fois les dépôts :

1sudo apt-get update

Installation de PHP

Pour installer la dernière version de PHP (7.4 au moment où j’écris cet article), exécutez la commande suivante :

1sudo apt-get install php7.4

Grâce au dépôt “ondrej/php”, vous pouvez installer n’importe quelle version que vous souhaitez :

1sudo apt-get install php7.3
2sudo apt-get install php7.2
3sudo apt-get install php7.1

Et voilà ! Vous pouvez vérifier la version de PHP avec la commande :

1$ php -v
2PHP 7.4.0 (cli) (built: Nov 28 2019 07:27:06) ( NTS )