La majorité d’hébergeurs en ligne propose des solutions prêtes à l’emploi pour installer WordPress (hébergement + nom de domaine + WordPress pré-installé + diverses options).😃 Le plus souvent, le processus d’installation ne prendra que quelques minutes. Ce sont des solutions idéales pour tous les débutants. Mais si vous souhaitez un contrôle total sur votre installation, alors vous pouvez aussi utiliser une interface de ligne de commande pour déployer ce logiciel. 🤗
Objectif
Cet article est un guide étape par étape, qui vous explique comment installer WordPress sur Ubuntu Linux manuellement. Ce processus est un peu plus technique et prend plus de temps qu’une l’installation classique de WordPress. Mais, nous allons vous guider tout au long du processus.🤭
Besoin d'un serveur privé virtuel VPS sécurisé ?
LWS vous conseille sa formule d’hébergement sur VPS en promotion à -75% (offre à partir de 4,99€ par mois au lieu de 19,99 €). Non seulement les performances sont au rendez-vous mais vous profitez en plus d’un support exceptionnel.
Prérequis
L’installation de WordPress sur un serveur Ubuntu Linux exige certains préalables :
- Disposer de la dernière version de Linux Ubuntu ;
- Avoir un compte utilisateur Linux non-root avec les privilèges d’administration du système (sudo) ;
- Installer LAMP sur votre serveur Linux Ubuntu. LAMP est l’infrastructure qui rassemble toutes les composantes dont WordPress a besoin pour fonctionner. Nous reviendrons sur ce point dans la suite de cet article ;
- Si vous souhaitez déployer WordPress sur un nom de domaine, alors vous devez également disposer d’un certificat SSL ou TLS. Une connexion cryptée permet de protéger vos données et celles de vos visiteurs lorsqu’elles sont transmises via navigateur web.
Comment installer WordPress sur Ubuntu Linux ?
Étape 1 : Installer LAMP sur votre serveur Linux
Si vous avez déjà installé LAMP sur votre serveur, alors vous pouvez ignorer cette partie. Par contre, si cela n’est pas le cas, vous devez commencer par là.
Le langage de programmation appelé PHP (Hypertext Preprocessor) permet de communiquer côté serveur. Il vous donne la possibilité de créer un site web dynamique avec des pages interactives. Pour stocker les informations de votre site et des utilisateurs, ce logiciel a besoin d’une base de données de type MySQL ou MariaDB. Tous ces éléments nécessitent un serveur (comme Apache) et un système d’exploitation (comme Linux) pour être déployés.
LAMP est l’infrastructure qui vous apporte tous ces éléments en une fois. LAMP est un acronyme qui signifie Linux, Apache, MySQL et PHP. Pour installer LAMP, vous devez suivre ces instructions👇 :
1. Mettre à jour les référentiels système
Ouvrez votre terminal sur Ubuntu et commencez par la mise à jour de référentiels système. Pour ce faire, envoyez la commande suivante :
$ sudo apt update
La sortie débute généralement avec les lignes suivantes :
[sudo] password for linuxuser : Hit : 1 http://security.ubuntu.com/ubuntu jammy -security InRelease Get 2 : http://us.archive.ubuntu.com/ubuntu jammy InRelease [270kb] Hit 3 : http://us.archive.ubuntu.com/ubuntu jammy updates InRelease...
Votre serveur va procéder à l’analyse et l’installation d’une nouvelle version si elle est disponible.
2. Installer et configurer PHP
Vous pouvez choisir une version à installer sur votre environnement en fonction de vos besoins. Mais pour plus de sécurité, vous devez installer la dernière version de PHP (actuellement PHP 8.1). Pour commencer, tapez la commande suivante dans votre terminal :
$ sudo add-apt-repository ppa:ondrej / php
Cela permet d’obtenir les référentiels nécessaires au fonctionnement de PHP. Après la validation de la commande, la sortie ressemble à celle-ci :
PPA publishes dbgsym, you may need to include 'main/debug' component Repository : 'deb https//ppa.launchpadcontent.net/ondrej/php/ubuntu/jammy main'
Ensuite, vous devez exécuter la commande ci-dessous pour installer la dernière version de PHP :
$ sudo apt installer php8.1
Lors de la sortie, vous aurez le résultat suivant :
Reading package lists... Done Building dependency tree... Done Reading state information... Done The following package was automatically installed and is no longer required : girl.2-gnomebluetooth-1.0...
3. Installer et configurer le serveur Apache
En principe, lors de l’installation de PHP, les packages d’Apache s’installent également. Si vous souhaitez confirmer cette installation, vous pouvez exécuter la commande ci-dessous :
$ sudo apt install apache2 libapache2-mod-php8.1 -y
La sortie sera de type :
Reading package lists... Done Building dependency tree... Done Reading state information... Done Apache 2 is already the newest version (2.4.52-1ubuntu4)...
Vous devez aussi autoriser les ports 80 et 43 à se s’exécuter dans le pare-feu UFW (Uncomplicated Firewall).
Pour autoriser l’ouverture du port 80, exécutez la commande suivante :
$ sudo ufw allow 80/tcp
En ce qui concerne le port 43, l’autorisation se fait par l’exécution de la commande suivante :
$ sudo ufw allow 43/tcp
Dans tous les deux cas, les sorties sont similaires et ressemblent à celles-ci :
Rules updated Rules updated (v6)
Lorsque vous avez fini d’exécuter ces commandes et que vous vous rendez sur votre serveur, vous aurez une image par défaut qui vous donne quelques informations sur le serveur Apache. Le serveur Apache crée un site par défaut et un dossier racine rudimentaire.
4. Ajuster la configuration du système MySQL
Après avoir installé PHP et configuré le serveur Apache, vous devez passer à la configuration de votre système MySQL. Pour cela, exécutez la commande ci-dessous :
$ sudo apt-get install mysql-server
Après avoir validé cette commande, la sortie sera similaire à celle-ci :
Reading package lists... Done Building dependency tree... Done Reading state information... Done The following package was automatically installed and is no longer required : girl.2-gnomebluetooth-1.0
Cette sortie sera suivie d’autres informations sur le système MySQL déployé. Par la suite, vous devez valider la commande ci-dessous afin de rendre MySQL interactif et sécurisé :
$ sudo mysql_secure_installation
Lorsque vous exécutez cette commande, vous aurez la sortie suivante :
Securing the MySQL server deployment. Connecting to MySQL using a blank password. Validate PASSWORD COMPONENT can be used to test passwords and improve security.
Vous devez ensuite définir un mot de passe utilisateur. Celui-ci peut avoir un niveau faible, moyen ou encore un niveau fort. Les niveaux moyen et fort suppose que vous utilisez un mot de passe combinant des numéros, des lettres et des symboles. Vous devez valider « 0 » pour un niveau faible, « 1 » pour le niveau moyen et enfin « 2 » pour le niveau le plus fort.
Après avoir fait un choix, vous devez définir un nouveau mot de passe pour l’utilisateur « root » de votre système MySQL et non pour votre serveur. Pour valider, entrez « y », puis, exécutez la commande.
Par la suite, testez votre connexion au système MySQL afin de vous assurer que vous l’avez bien configuré. Pour cela, exécutez la commande ci-dessous :
$ sudo mysql
Et la sortie sera de type :
Welcome to the MySQL monitor, commands end with ; or\g. Your MySQL connection id is 10 server version : 8.0.28-0ubuntu4 (ubuntu)
5. Rechercher et installer d’autres packages nécessaires
Jusqu’ici, tout est presque prêt pour votre serveur Linux. Mais il se peut qu’il soit nécessaire d’installer d’autres extensions PHP. Pour trouver celles qui sont requises, exécutez la commande suivante :
$ sudo apt search php8.1-*
La sortie va afficher liste d’extensions PHP disponibles que vous devez installer. Pour passer à l’installation de tous ces modules, vous devez vous servir de la commande ci-dessous :
$ sudo apt install php8.1-mysql php8.1-curl php8.1-xml
Après leur installation, vous aurez le résultat suivant lors de la sortie :
Reading package lists... Done Building dependency tree... Done Reading state information... Done The following package was automatically installed and is no longer required: girl.2-gnomebluetooth-1.0
6. Valider l’intégration de PHP et Apache
Pour valider l’intégration de PHP et Apache, vous devez créer un fichier appelé phpinfo.php. Ce dernier doit être stocké à la racine de votre site. Utilisez un éditeur pour exécuter la commande suivante :
$ sudo nano / var / www / html / phpinfo.php
Dans le fichier créé, vous devez entrer le script suivant et enregistrer les modifications :
<?php phpinfo ( ) ; ?>
Excellent🙏, vous avez installé LAMP sur votre serveur Ubuntu, vous devez maintenant créer une base de données pour votre site WordPress.
Étape 2 : Créer une base de données MySQL et un utilisateur pour WordPress
Comme nous le disions plus tôt, WordPress stocke toutes les données dans la base de données MySQL. La deuxième étape consiste donc à créer une nouvelle base de données pour votre site. Vous pouvez vous connecter à votre console MySQL en exécutant la commande ci-dessous :
$ sudo mysql -u root -p
Le mot de passe de votre compte utilisateur vous sera demandé.
Une fois que vous êtes dans la console MySQL, exécutez la commande ci-dessous pour créer une nouvelle base de données. Trouvez un nom pour votre base de données qui soit facile à mémoriser. Vous serez peut-être amené à créer d’autres bases de données dans votre système prochainement. Pour notre cas, nous avons choisi wplws1.
CREATE DATABASE wplws1 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Vous devez ensuite créer un utilisateur spécifique pour cette base de données.
Pour ajouter un nouvel utilisateur, exécutez la commande ci-dessous :
CREATE USER 'wplws1user'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
Vous devez remplacer password par un mot de passe personnalisé. Par la suite, vous devez autoriser ce nouvel utilisateur à avoir un accès complet à votre base de données (précédemment créée). Pour cela, envoyez la commande ci-dessous :
GRANT ALL ON wplws1.* TO 'wplws1user'@'%';
🙏Actuellement, vous avez créé une nouvelle base de données et un compte utilisateur destinés à la gestion de fichiers de votre prochain site WordPress. Vous devez ensuite informer votre système MySQL des nouveaux changements effectués. Pour cela, vous devez supprimer les privilèges de l’instance en cours en exécutant la commande ci-dessous :
FLUSH PRIVILEGES;
Pour voir votre base de données nouvellement créée, exécutez la commande ci-dessous :
SHOW DATABASES;
Par ailleurs, WordPress va créer sa propre structure de tables au moment de l’installation. Vous devez maintenant quitter la console MySQL en tapant cette commande :
EXIT;
Étape 3 : Installer les extensions PHP nécessaires à WordPress
Lors de l’installation et la configuration de LAMP sur votre serveur Ubuntu, vous avez installé des packages PHP supplémentaires. Mais la plateforme WordPress a ses propres exigences fonctionner normalement. De même, ce logiciel utilise des plugins qui nécessitent également des extensions PHP supplémentaires pour leur fonctionnement. Vous devez toujours lire la documentation de chaque plugin pour en savoir plus sur les exigences techniques.
En général, exécutez la commande ci-dessous pour installer les packages PHP requises :
$ sudo apt update $ sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip
Terminez l’installation de ces modules supplémentaires en redémarrant votre serveur. Cela se fait avec la commande suivante :
sudo systemctl restart apache2
Étape 4 : Autoriser le fichier .htaccess à remplacer et réécrire dans le serveur Apache
Normalement avec la configuration effectuée jusqu’ici, vous devez avoir un fichier de configuration pour votre site et un répertoire racine. Pour l’instant, le site créé par défaut est 000-default.conf et sa racine web est disponible via le chemin /var/www/html. Vous pouvez utiliser cette configuration par défaut si vous souhaitez installer WordPress pour des raisons de tests.
Mais si vous avez un nom de domaine et que vous souhaitez plutôt publier votre site en ligne, alors vous pouvez personnaliser cette configuration. Pour cela, vous devez utiliser le fichier .htaccess pour effectuer ces changements. Nous allons adopter /etc/apache2/sites-available/wplws1.conf comme fichier de configuration de notre site et /var/www/wplws1 comme le répertoire racine. Dans votre cas, vous pouvez remplacer wplws1 par votre domaine personnalisé.
Autoriser les remplacements dans le fichier .htaccess
Tout d’abord, vous devez activer le fichier .htaccess en utilisant n’importe quel éditeur de textes compatible. Pour ce faire, ouvrez le fichier de votre site dans un éditeur comme nano avec la commande ci-dessous :
$ sudo nano /etc/apache2/sites-available/wplws1.conf
Ensuite, tapez la commande suivante pour configurer la directive AllowOverride :
<Directory /var/www/wplws1/> AllowOverride All </Directory>
Vous avez autorisé les remplacements dans le fichier .htaccess. Vous devez ensuite fermer votre éditeur de textes puis passer à une autre étape.
Activer le module de réécriture
L’activation du module de réécriture permet aux utilisateurs de WordPress d’avoir la possibilité de personnaliser les permaliens dans leurs sites. Les permaliens lisibles sont toujours recommandés pour des raisons de référencement naturel. Cela se fait par l’exécution de la commande ci-dessous :
$ sudo a2enmod rewrite
Activer votre configuration
Pour activer toutes vos configurations effectuées, vous devez simplement redémarrer votre serveur. Mais avant cela, vous pouvez vérifier que les changements effectués sont corrects. Pour cela, exécutez la commande ci-dessous :
$ sudo apache2ctl configtest
La sortie doit ressembler à celle-ci :
Output 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 Syntax OK
La syntaxe « OK » signifie que la configuration effectuée est correcte et que votre site WordPress peut être déployé sans contraintes. Enfin, vous pouvez activer votre configuration en redémarrant votre serveur avec la commande suivante :
$ sudo systemctl restart apache2
Étape 5 : Télécharger et installer WordPress
Vous devez télécharger la dernière version de WordPress pour des raisons de sécurité. WordPress sera d’abord placé dans un répertoire temporaire notamment tmp. Pour télécharger la version compressée de WordPress, exécutez la commande suivante :
$ cd /tmp $ curl -O https://wordpress.org/latest.tar.gz
Vous devez ensuite extraire les fichiers avec la commande ci-dessous afin de fournir à WordPress une structure de répertoire personnalisée :
$ tar xzvf latest.tar.gz
La prochaine action consiste à créer un faux fichier .htaccess que WordPress utilisera ultérieurement pour sa configuration. Faites cela avec la commande ci-dessous :
$ touch /tmp/wordpress/.htaccess
Vous pouvez aussi, copier le fichier de configuration (wp-config.php) vers le nom du fichier que WordPress lit. Cela se fait avec la commande suivante :
$ cp /tmp/wordpress/wp-config-sample.php /tmp/wplws1/wp-config.php
En outre, vous pouvez permettre à WordPress de se mettre à jour automatiquement chaque fois qu’une nouvelle version est disponible sans nécessiter des autorisations supplémentaires. Pour cela, vous devez entrer la commande suivante :
$ mkdir /tmp/wplws1/wp-content/upgrade
Cette commande crée un répertoire upgrade pour l’exécution prochaine des mises à jour de WordPress. Une fois que vous avez terminé ces configurations, déplacez tous les dossiers à la racine de votre site. Servez-vous de la commande ci-dessous :
$ sudo cp -a /tmp/wordpress/. /var/www/wplws1
Étape 6 : Paramétrer le répertoire de WordPress
Définir les autorisations correctes sur les fichiers WordPress
Au cours de cette étape, vous devez accorder les autorisations nécessaires au serveur Apache afin qu’il lui soit permis de lire et écrire les fichiers de WordPress. Cette configuration est également indispensable pour que les prochaines mises à jour soient automatiques. Pour faire cela, vous devez attribuer la propriété de tous de fichiers à www-data avec la commande suivante :
$ sudo chown -R www-data:www-data /var/www/wplws1
La commande chown incluse dans le script est celle qui permet la modification de propriétés de fichiers sur Apache.
Ensuite, deux commandes find suivantes seront exécutées afin de définir les autorisations spécifiques pour les fichiers de WordPress et ses répertoires.
$ sudo find /var/www/wplws1/ -type d -exec chmod 750 {} \; $ sudo find /var/www/wplws1/ -type f -exec chmod 640 {} \;
Ajuster le fichier de configuration de WordPress (wp-config.php)
Tout d’abord, vous devez accroître la sécurité de votre site en générant des clés secrètes. Vous pouvez utiliser le générateur de clés par défaut fourni par WordPress. Pour obtenir ces clés secrètes, exécutez la commande ci-dessous :
$ cul -s https://api.wordpress.org/secret-key/1.1/salt/
Lors de la sortie, ces clés secrètes ressemblent à celles-ci :
Output define('AUTH_KEY', '1jl/vqfs<XhdXoAPz9 c_j{iwqD^<+c9.k<J@4H'); define('SECURE_AUTH_KEY', 'E2N-h2]Dcvp+aS/p7X {Ka(f;rv?Pxf})CgLi-3'); define('LOGGED_IN_KEY', 'W(50,{W^,OPB%PB<JF 2;y&,2m%3]R6DUth[;88'); define('NONCE_KEY', 'll,4UC)7ua+8<!4VM+ #`DXF+[$atzM7 o^-C7g'); define('AUTH_SALT', 'koMrurzOA+|L_lG}kf 07VC*Lj*lD&?3w!BT#-'); define('SECURE_AUTH_SALT', 'p32*p,]z%LZ+pAu:VY C-?y+K0DK_+F|0h{!_xY'); define('LOGGED_IN_SALT', 'i^/G2W7!-1H2OQ+t$3 t6**bRVFSD[Hi])-qS`|'); define('NONCE_SALT', 'Q6]U:K?j4L%Z]}h^q7 1% ^qUswWgn+6&xqHN&%');
Une fois que vous avez obtenu ces valeurs, ouvrez votre fichier de configuration à l’aide d’un éditeur de texte. Vous devez ensuite rechercher les lignes de codes ci-dessous👇 afin de coller et correspondre les valeurs.
. . . define('AUTH_KEY', '.....................................'); define('SECURE_AUTH_KEY', '...............................'); define('LOGGED_IN_KEY', '............................'); define('NONCE_KEY', '..................................'); define('AUTH_SALT', '...............................'); define('SECURE_AUTH_SALT', '..................................'); define('LOGGED_IN_SALT', '............................'); define('NONCE_SALT', '.............................'); . . .
Tout ce que vous avez à faire est de copier et coller respectivement les valeurs uniques obtenues sur chaque ligne de codes en remplaçant les points.
En outre, dans le fichier wp-config.php, vous devez également correspondre les informations de votre base de données, l’utilisateur de la base de données ainsi que le mot de passe. Vous avez obtenu ces informations lors de la création de la base de données à l’étape 2.
. . . // ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define( 'DB_NAME', 'wplws1' ); /** MySQL database username */ define( 'DB_USER', 'wplws1user' ); /** MySQL database password */ define( 'DB_PASSWORD', 'password' ); /** MySQL hostname */ define( 'DB_HOST', 'localhost' ); /** Database Charset to use in creating database tables. */ define( 'DB_CHARSET', 'utf8' ); /** The Database Collate type. Don't change this if in doubt. */ define( 'DB_COLLATE', '' ); . . .
Remplacez respectivement le nom de la base de données, le nom d’utilisateur et le mot de passe par vos propres informations.
Il est également essentiel de définir la méthode que doit utiliser WordPress pour écrire dans les fichiers du système. Vous devez simplement la définir sur le mode direct afin d’éviter que WordPress vous demande vos informations FTP pour effectuer certaines tâches. Utilisez la commande ci-dessous pour faire cela :
define('FS_METHOD', 'direct');
Etape 7 : Finaliser l’installation de WordPress
Vous devez maintenant vous connecter à votre site afin de finaliser l’installation. Ouvrez votre navigateur web et rendez-vous à l’adresse de votre domaine ou votre adresse IP. Vous aurez une page ressemblant à celle-ci :
Choisissez votre langue puis cliquez sur le bouton « Continuer ». Vous serez redirigé vers une nouvelle interface. Indiquez un titre pour votre site, un identifiant et un mot de passe à utiliser lors de la connexion à l’espace d’administration.
Une fois que vous avez terminé, cliquez sur le bouton « Installer WordPress » et c’est parti !
Votre site a été installé avec succès. Vous pouvez cliquer sur le bouton « Se connecter » pour accéder au tableau de bord de votre site et commencer à le personnaliser.
Conclusion
🥳Toutes nos félicitations, vous savez maintenant comment installer WordPress sur Ubuntu Linux manuellement avec un LAMP Stack. Cette méthode d’installation de WordPress prend du temps que d’habitude mais elle est idéale pour tout développeur souhaitant comprendre le fonctionnement de WordPress. Toutes les étapes ont été détaillées dans ce tutoriel, il ne vous reste qu’à les mettre en action.
Si vous avez des questions, utilisez la section Commentaires pour nous écrire.
Commentaires (0)