WordPress · 13 min read · Jan 26, 2026
Déployer WordPress sur FAMP dans FreeBSD 11.1
Ce guide montrera comment installer et configurer le CMS open source le plus populaire utilisé sur Internet, WordPress, sur FAMP dans la dernière version de FreeBSD 11.x. FAMP est un acronyme qui décrit le bundle logiciel suivant : F reeBSD 11.1 système d’exploitation de type Unix, A pache HTTP serveur, l’un des serveurs web open-source les plus populaires sur Internet, M ariaDB SGBD (système de gestion de base de données relationnelle), qui est un fork du moteur de base de données MySQL, et P HP langage de programmation côté serveur.
EXIGENCES :
- Installation de FreeBSD 11.x effectuée à partir de zéro ou aucun logiciel FAMP précédent installé dans le système.
- La carte d’interface réseau configurée avec une adresse IP statique.
- Serveur SSH installé et configuré pour un accès à distance ou accès direct à la console de ligne de commande du serveur.
- De préférence un nom de domaine enregistré (pas absolument nécessaire dans ce tutoriel car nous utiliserons l’adresse IP statique du serveur pour visiter le site web).
- Un compte sudo sur le serveur configuré avec des privilèges root ou un accès direct au compte root.
Étape 1 - Installer MariaDB
Avant d’installer le bundle FAMP sur votre serveur FreeBSD, connectez-vous avec un compte ayant des privilèges root et assurez-vous que votre système est entièrement à jour en exécutant les commandes ci-dessous.
freebsd-update fetchfreebsd-update installpkg updatepkg upgradeAfin de faciliter l’administration du serveur depuis la ligne de commande, assurez-vous également d’installer les packages suivants :
pkg install bash bash_completion nanoNano est un éditeur de ligne de commande Linux populaire. Dans FreeBSD, ee est l’éditeur de fichiers par défaut. L’éditeur Vi est également installé, par défaut, dans FreeBSD.
Pour déployer un site Web WordPress sur un serveur, il est absolument impératif de se connecter à une base de données relationnelle. L’un des SGBD les plus utilisés en conjonction avec WordPress est MySQL/MariaDB. Ainsi, le premier composant à installer dans notre pile FAMP serait le serveur de base de données MySQL. Afin de rechercher les versions et composants de base de données MariaDB disponibles, qui seront utilisés dans cette configuration en faveur de la base de données MySQL, exécutez l’une des commandes suivantes dans la console de votre machine.
ls -al /usr/ports/databases/ | grep mariadbpkg search -o mariadb

Ensuite, installez la dernière version du serveur de base de données MariaDB dans FreeBSD, en exécutant la commande suivante :
pkg install mariadb102-client mariadb102-serverÀ l’étape suivante, assurez-vous d’activer le démon MariaDB dans FreeBSD et de démarrer le service de base de données en exécutant les commandes ci-dessous.
sysrc mysql_enable="YES"service mysql-server startEnsuite, commencez à sécuriser la base de données MaraDB en exécutant le script mysql_secure_installation. Utilisez l’exemple d’installation suivant afin de sécuriser la base de données MariaDB. Assurez-vous également de choisir un mot de passe fort pour l’utilisateur root de MySQL.
/usr/local/bin/mysql_secure_installation*NOTE : L'EXÉCUTION DE TOUTES LES PARTIES DE CE SCRIPT EST RECOMMANDÉE POUR TOUS LES SERVEURS MariaDB EN UTILISATION EN PRODUCTION ! VEUILLEZ LIRE CHAQUE ÉTAPE ATTENTIVEMENT !** LA SÉCURISATION DE LA BASE DE DONNÉES MARIA DB EST RECOMMANDÉE !** **Pour se connecter à MariaDB afin de la sécuriser, nous aurons besoin du mot de passe actuel**pour l'utilisateur root. Si vous venez d'installer MariaDB, et*vous n'avez pas encore défini le mot de passe root, le mot de passe sera vide,*vous devez donc simplement appuyer sur Entrée ici.** **Entrez le mot de passe actuel pour root (appuyez sur Entrée pour aucun) :**OK, mot de passe utilisé avec succès, passage à la suite...** **Définir le mot de passe root garantit que personne ne peut se connecter à la base de données MariaDB**sans l'autorisation appropriée.**Définir le mot de passe root ? [Y/n] y**Nouveau mot de passe :**Ressaisir le nouveau mot de passe :**Mot de passe mis à jour avec succès !**Rechargement des tables de privilèges..** ... Succès !**Par défaut, une installation de MariaDB a un utilisateur anonyme, permettant à quiconque*de se connecter à MariaDB sans avoir à créer de compte utilisateur pour*lui. Cela est destiné uniquement à des fins de test, et pour rendre l'installation*plus fluide. Vous devriez les supprimer avant de passer à un*environnement de production.**Supprimer les utilisateurs anonymes ? [Y/n] y** ... Succès !**Normalement, root ne devrait être autorisé à se connecter que depuis 'localhost'. Cela*assure que quelqu'un ne peut pas deviner le mot de passe root depuis le réseau.**Interdire la connexion root à distance ? [Y/n] y** ... Succès !**Par défaut, MariaDB est livré avec une base de données nommée 'test' à laquelle quiconque peut*accéder. Cela est également destiné uniquement à des fins de test, et doit être supprimé*avant de passer à un environnement de production.**Supprimer la base de données de test et l'accès à celle-ci ? [Y/n] y** - Suppression de la base de données de test...** ... Succès !** - Suppression des privilèges sur la base de données de test...** ... Succès !**Recharger les tables de privilèges garantira que tous les changements effectués jusqu'à présent*prendront effet immédiatement.**Recharger les tables de privilèges maintenant ? [Y/n] y** ... Succès !**Nettoyage...**Tout est fait ! Si vous avez terminé toutes les étapes ci-dessus, votre installation de MariaDB*devrait maintenant être sécurisée.**Merci d'utiliser MariaDB !*Le service MariaDB est configuré, par défaut, pour se lier et écouter les connexions réseau sur 0.0.0.0:3306/TCP socket réseau. En exécutant la commande sockstat avec les drapeaux -4 -6, vous remarquerez l’état du socket MariaDB comme illustré dans la capture d’écran ci-dessous.
sockstat -4 -6
Ce comportement du serveur MySQL est sujet à des problèmes de sécurité, nous allons donc désactiver complètement l’accès à distance à MariaDB en liant le démon uniquement à l’interface de boucle, en exécutant la commande ci-dessous. Vous devrez redémarrer le démon pour refléter les changements.
sysrc mysql_args="--bind-address=127.0.0.1".service mysql-server restartCependant, exécutez à nouveau la commande sockstat pour déterminer le nouvel état du socket réseau MariaDB. À présent, MariaDB devrait écouter les connexions uniquement depuis l’interface de boucle, comme montré dans la capture d’écran ci-dessous.
sockstat -4Enfin, après avoir sécurisé le démon de base de données MySQL, créez une base de données MariaDB pour l’installation de WordPress. Connectez-vous à MariaDB depuis la console du serveur et exécutez les commandes suivantes pour créer la base de données et l’utilisateur qui seront utilisés pour administrer la base de données WordPress. Entrez le mot de passe root de MySQL à l’invite et assurez-vous de remplacer le nom de la base de données, l’utilisateur de la base de données et le mot de passe en conséquence.
mysql –u root –p*create database wordpress;**grant all privileges on wordpress.* to 'wpuser'@'localhost' identified by 'wppassword';**flush privileges;**exit*
Étape 2 – Installer le serveur Web Apache
Le prochain service que vous devez installer pour compléter la pile FAMP est le serveur HTTP Apache. Les dépôts PORTS de FreeBSD viennent avec deux versions pré-compilées du serveur web Apache. Afin de lister toutes les versions d’exécution d’Apache, exécutez l’une des commandes suivantes dans le terminal.
pkg search apache2ls /usr/ports/www/ | grep apache

Pour cette configuration personnalisée avec WordPress, nous allons installer la version 2.4 du serveur HTTP Apache en exécutant la commande suivante.
pkg install apache24Après que le package du serveur web Apache avec toutes les dépendances a été installé sur le système, assurez-vous d’activer et de démarrer le démon avec les commandes suivantes.
sysrc apache24_enable="yes"service apache24 startPour tester la configuration d’Apache, ouvrez un navigateur et visitez la page web par défaut via le protocole HTTP en entrant l’adresse IP de votre serveur ou le FQDN du système dans le champ URL, comme illustré dans l’image ci-dessous. Un message disant “ Ça fonctionne ! “ devrait s’afficher dans votre navigateur.
http://server_IP ou_FQDN
Le répertoire DocumentRoot du serveur HTTP Apache est situé dans le chemin /usr/local/www/apache24/data/ dans FreeBSD 11.x. Nous copierons les fichiers d’installation de WordPress à cet emplacement plus tard. Assurez-vous également de supprimer le fichier index.html par défaut en exécutant la commande suivante.
rm /usr/local/www/apache24/data/index.htmlÉtape 3 – Installer PHP
De manière similaire au serveur web Apache, FreeBSD 11.x PORTS expédient avec plusieurs versions binaires pré-compilées du langage PHP : PHP 5.6, PHP 7.0 et PHP 7.1. Pour afficher toutes les versions de PHP, exécutez l’une des commandes suivantes.
ls /usr/ports/lang/ | grep phppkg search –o phpDans ce tutoriel personnalisé, nous utiliserons la version PHP 7.1 pour l’installation de WordPress. Exécutez la commande ci-dessous pour installer PHP avec tous les modules requis afin que WordPress fonctionne correctement.
pkg install php71 php71-mysqli mod_php71 php71-mbstring php71-mcrypt php71-zlib php71-curl php71-gd php71-json**
À l’étape suivante, en utilisant votre éditeur de texte préféré, créez un nouveau fichier de configuration php.conf pour le serveur web Apache dans le répertoire /usr/local/etc/apache24/Includes/ et ajoutez le contenu ci-dessous.
nano /usr/local/etc/apache24/Includes/php.confExtrait du fichier php.conf :
*
DirectoryIndex index.php index.html
SetHandler application/x-httpd-php
SetHandler application/x-httpd-php-source
*
Après avoir terminé l’édition du fichier, assurez-vous de créer un nouveau fichier phpinfo.php dans le chemin webroot par défaut d’Apache en exécutant la commande ci-dessous pour tester si la passerelle PHP d’Apache fonctionne comme prévu.
echo '' | tee /usr/local/www/apache24/data/phpinfo.phpEnfin, redémarrez le service Apache afin d’appliquer les modifications et naviguez vers l’URL ci-dessous pour afficher la configuration côté serveur PHP comme illustré dans la capture d’écran suivante.
service apache24 restarthttp://server_IP-or-FQDN/phpinfo.php
De plus, vous pourriez vouloir créer le fichier de configuration PHP ini pour Apache et changer l’instruction timezone pour refléter la localisation géographique de votre serveur. La liste des fuseaux horaires PHP pris en charge peut être trouvée à l’adresse suivante : http://php.net/manual/en/timezones.php
Copiez le fichier php.ini-production afin de créer le fichier de configuration par défaut pour PHP. Ensuite, éditez le fichier php.ini afin de changer la configuration du fuseau horaire PHP.
cp /usr/local/etc/php.ini-production /usr/local/etc/php.ininano /usr/local/etc/php.iniExtrait du fichier php.ini :
*date.timezone = Continent/Ville*
Pour appliquer le nouveau paramètre PHP, vous devez redémarrer le service Apache. Ensuite, visitez à nouveau la page phpinfo.php et faites défiler jusqu’à la configuration date pour voir si le changement a été appliqué avec succès, comme illustré dans la capture d’écran ci-dessous.
service apache24 restartÉtape 4 – Installer WordPress
Pour installer WordPress sur FAMP dans FreeBSD, téléchargez d’abord la dernière version de l’archive d’installation tarball dans votre système en utilisant l’utilitaire wget. Extrayez l’archive téléchargée et copiez tous les fichiers d’installation de WordPress dans le chemin webroot d’Apache en exécutant les commandes suivantes.
wget https://wordpress.org/latest.tar.gztar xfz latest.tar.gzcp –rf wordpress/* /usr/local/www/apache24/data/
Ensuite, ajustez les permissions appropriées pour le chemin webroot de votre serveur pour le compte du groupe d’exécution d’Apache, afin d’accorder au serveur web des permissions d’écriture dans le répertoire d’installation de WordPress.
chown -R root:www /usr/local/www/apache24/data/chmod -R 775 /usr/local/www/apache24/data/Maintenant, votre serveur web est prêt pour le processus d’installation de WordPress. Ouvrez un navigateur et naviguez vers l’adresse IP de votre serveur ou le FQDN et le premier écran d’installation devrait apparaître. Cliquez sur le bouton Allons-y ! pour commencer l’installation.
À l’écran suivant, entrez le nom de la base de données MariaDB, le nom d’utilisateur de la base de données WordPress et le mot de passe ainsi que l’hôte de la base de données. Comme MariaDB et le serveur web Apache sont installés sur le même nœud, utilisez localhost pour l’hôte de la base de données. Laissez la valeur par défaut du préfixe de table et appuyez sur le bouton Soumettre pour continuer.
Après la création du fichier de configuration de la base de données, cliquez sur le bouton Exécuter l’installation et, à l’écran suivant, ajoutez un titre pour votre site web, un nom d’utilisateur pour administrer le site et une adresse e-mail. Assurez-vous de choisir un mot de passe fort pour le nom d’utilisateur. De plus, vous devriez éviter d’utiliser des noms d’utilisateur simples comme admin, administrateur, root, etc., en raison des implications de sécurité. Lorsque vous avez terminé, cliquez sur le bouton Installer WordPress pour finaliser l’installation.
Après que WordPress a été installé avec succès, connectez-vous au panneau de tableau de bord admin avec les identifiants créés à l’étape précédente et commencez à gérer votre site web.
Afin de mettre à jour ou d’installer des plugins ou des thèmes ou de télécharger des images ou de modifier d’autres aspects de WordPress qui nécessitent de télécharger des fichiers depuis Internet, ajoutez la ligne suivante au fichier wp-config.php de WordPress en exécutant la commande suivante avec des privilèges root.
echo "define('FS_METHOD', 'direct');" | tee –a /usr/local/www/apache24/data/wp-config.phpCette ligne assure que WordPress peut télécharger et installer des fichiers ou des mises à jour en ligne sans exécuter de serveur FTP sur l’hôte. Cependant, cette méthode peut ne pas être le meilleur choix dans le cas où WordPress est installé sur un plan d’hébergement partagé. Dans la capture d’écran ci-dessous, une mise à jour pour un plugin a été appliquée avec succès en utilisant le FS_METHOD sans demander de compte ftp.
Enfin, afin de pouvoir changer la structure des liens internes permanents de WordPress, vous devez activer rewrite pour le serveur HTTP Apache . Pour activer le module de réécriture, ouvrez d’abord le fichier de configuration principal d’Apache et ajoutez le bloc de code suivant avant l’instruction
nano /usr/local/etc/apache24/httpd.confExtrait du fichier httpd.conf :
*
Require all granted
AllowOverride All
** *
Ensuite, fermez le fichier et décommentez la ligne LoadModule de réécriture en exécutant la commande ci-dessous qui supprime le signe dièse précédent. Utilisez le filtre grep pour afficher la ligne LoadModule de réécriture . Enfin, vérifiez le fichier de configuration d’Apache pour d’éventuelles erreurs de syntaxe et redémarrez le service pour appliquer les changements.
grep rewrite /usr/local/etc/apache24/httpd.confsed -i.bak '/rewrite/s/^#//g' /usr/local/etc/apache24/httpd.confgrep rewrite /usr/local/etc/apache24/httpd.confapachectl -tservice apache24 restart
Maintenant, vous pouvez changer la structure des liens permanents de WordPress en naviguant vers Tableau de bord -> Paramètres -> Permaliens. Choisissez votre option de permalien préférée pour la structure d’URL parmi les options d’écran et cliquez sur le bouton Enregistrer les modifications pour appliquer les changements. Une excellente option pour le SEO est le permalien Nom du post.
Si l’option de permalien ne s’applique pas, ouvrez et examinez le contenu du fichier .htaccess depuis le chemin webroot de votre serveur. Le contenu ci-dessous devrait être automatiquement inséré dans ce fichier. Sinon, mettez à jour le contenu ci-dessous manuellement dans le fichier .htaccess ou vérifiez les permissions du fichier. L’utilisateur ou le groupe d’exécution d’Apache devrait avoir des permissions d’écriture sur ce fichier.
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

C’est tout ! Vous avez déployé avec succès un site Web WordPress sur un serveur web Apache, une base de données MariaDB et le langage de programmation PHP dans FreeBSD 11.
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.