Héberger un site WordPress sur un vieux PC
Bonjour,
Dans mon article précédent, je vous racontais comment j’ai développé ma passion pour les sites internet. Cependant, on m’a fait remarquer que mon article était éducatif, mais manquait de côté « pratique ». Dans celui-ci, je vais donc vous expliquer comment héberger son site WordPress.
Nous allons supposer que vous disposez de l’ordinateur de mamie, qui a 15 ans. Si ce n’est pas le cas, vous pouvez toujours passer par un VPS ou autre chose. Partons simplement du principe que vous ne l’avez jamais fait : c’est votre premier site internet, même.
Pour commencer, il nous faudra un système d’exploitation. Nous allons donc utiliser Fedora Server. Je ne recommande pas Windows Server, car c’est très lourd. Vous pouvez utiliser ce que vous voulez, mais je recommande Fedora Server, car il inclut Cockpit, qui vous permet de gérer facilement le serveur. Si, dans le futur, vous comptez faire autre chose, Fedora Server gère bien. Je l’utilise personnellement.
Préparer le Matériel (Hardware)
Comme je vous le disais, nous allons supposer que vous avez un ordinateur vieux et fatigué. Ça tombe bien : Fedora Server ne demande qu’un processeur 2 GHz dual-core 64 bits, 2 Go de RAM et 20 Go d’espace disque. Cependant, si vous avez plus, on ne dira pas non. Mais dans notre époque, il faut faire avec le minimum.
De la même façon que vous installez n’importe quel OS, téléchargez l’image disque sur le site officiel de Fedora et installez-la sur votre clé USB à l’aide d’un logiciel comme Rufus ou Balena Etcher. Puisqu’on est sur Fedora, il y a aussi un installateur dédié.
Installation de Fedora Server
Pour les étapes suivantes, nous allons suivre la documentation officielle. À cause des mises à jour de l’installateur, je ne peux pas vous indiquer la démarche exacte. Suivez simplement le guide en ligne : l’installateur est très intuitif.
À l’intérieur, vous devez choisir votre langue, votre clavier, votre fuseau horaire, votre connexion internet, etc. Lors de l’installation proprement dite, vous devez choisir un endroit où l’installer et configurer vos partitions. Puisqu’il s’agit d’un ordinateur qui doit rester actif 24h/24, je ne recommande pas le dual boot. Sélectionnez tout le disque.
Lors de la création des comptes, vous devez créer un utilisateur root, qui permettra d’effectuer les modifications nécessaires. Vous pouvez aussi créer un utilisateur sans permissions supplémentaires pour plus de sécurité. Vous pouvez procéder à l’installation.
Si ça ne fonctionne pas, vous avez sûrement une option à cocher ou à décocher dans le BIOS. Ça dépend de votre ordinateur. De mon côté, c’est la virtualisation et le Secure Boot qui me posent problème. Pour cette étape, je vous invite à chercher spécifiquement avec votre type de BIOS sur le forum Fedora.
Connexion au serveur
Une fois installé, vous pouvez vous connecter de plusieurs façons : soit directement sur l’ordinateur, soit via SSH. Cependant, comme nous avons installé Fedora Server, nous allons profiter de Cockpit. Pour ce faire, il vous suffit d’aller sur votre navigateur et de taper l’adresse IP de votre machine suivie de :9090. Vérifiez bien que vous êtes sur le même réseau et que vos appareils peuvent communiquer entre eux. Une fois connecté, vous pouvez aller dans l’onglet « Terminal ».
Mises à jour et configuration de base
Avant toute chose, nous allons faire les mises à jour.
sudo dnf update && sudo dnf upgrade
Dans Cockpit, vous pouvez aussi les régler en automatique.
Vu qu’il s’agit d’un vieil ordinateur, nous allons supposer que vous n’avez pas beaucoup de mémoire. Vous devez donc créer un fichier d’échange (swap) qui servira de mémoire tampon :
sudo fallocate -l 1G /swapfile
sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo "/swapfile swap swap defaults 0 0" | sudo tee -a /etc/fstab
Installation de LAMP
Nous devons maintenant installer LAMP (Linux, Apache, MySQL et PHP) pour faire tourner notre site. Sous Fedora, utilisez :
sudo dnf install httpd mariadb-server mariadb php php-mysqlnd php-pgsql php-gd php-mbstring php-xml php-xmlrpc
sudo systemctl enable --now httpd mariadb
Rendre l’adresse IP publique
Si vous voulez que votre site internet soit public, vous allez devoir rendre son adresse IP publique. Nous allons supposer que vous avez une Freebox. Si vous êtes chez un autre opérateur, c’est la même idée, mais vous allez peut-être un peu plus galérer.
La première chose à faire est d’aller sur le site de Free pour demander une IP fixe. Par défaut, les box internet changent d’adresse IP quand vous les redémarrez : ça coûte moins cher pour eux et c’est plus sécurisé. Seulement, nous avons besoin d’une adresse fixe pour notre site.
- Connectez-vous à votre espace abonné sur le site officiel de Free.
- Accédez aux fonctionnalités de votre compte et demandez une adresse IPv4 fixe « Full Stack ».
- Patientez environ 30 minutes, puis redémarrez votre Freebox.
Configuration de la Freebox
Ensuite, connectez-vous à Freebox OS.
- Sur votre Freebox, dans les plages d’IP, assurez-vous de mettre une IP locale fixe pour votre serveur.
- Allez dans le menu Paramètres de la Freebox.
- Choisissez le mode Avancé, puis l’icône DHCP.
- Rendez-vous dans l’onglet Baux statiques.
- Cliquez sur Ajouter un bail statique.
- Sélectionnez votre appareil dans la liste ou entrez manuellement son adresse MAC et l’adresse IP locale que vous souhaitez lui attribuer de façon fixe.
- Validez et redémarrez l’appareil concerné pour qu’il prenne en compte sa nouvelle configuration réseau.
- Redirection de ports :
- Dans Freebox OS, accédez à Redirection de ports.
- Cliquez sur Ajouter une redirection.
- Sélectionnez le protocole TCP.
- Saisissez 80 pour les ports de début et de fin.
- Saisissez l’adresse IP locale de votre machine cible (adresse IP de destination).
- Enregistrez et appliquez les modifications.
Maintenant, vous pourrez accéder à votre site internet en tapant votre adresse IP fixe.
Nom de domaine
Nous allons aller plus loin en ajoutant un nom de domaine. Si vous voulez le nom de domaine Free, vous pouvez l’obtenir facilement sans mon aide. Pour mon exemple, je vais prendre goldenlib.nya.je. Vous pouvez avoir un nom de domaine gratuit comme moi sur ddns.kicya.net. Si vous avez acheté un nom de domaine, vous pouvez aussi continuer.
- Connectez-vous à l’espace client de votre bureau d’enregistrement de domaine.
- Allez dans la section Gestion DNS ou Zone DNS.
- Créez ou modifiez les enregistrements principaux. Il nous faudra au moins 2 enregistrements :
- Enregistrement A : Associe votre domaine à une adresse IPv4 fixe (celle que vous avez demandée sur votre compte Free, par exemple :
192.0.2.1). - Enregistrement CNAME : Associe votre sous-domaine (
www) à une autre adresse web (exemple :www.goldenlib.nya.je). - À l’avenir, vous pourrez aussi faire des enregistrements TXT pour ajouter Google AdSense ou d’autres services.
- Enregistrement A : Associe votre domaine à une adresse IPv4 fixe (celle que vous avez demandée sur votre compte Free, par exemple :
Les changements prennent entre 2 et 24 heures pour être actifs partout dans le monde. Pendant ce temps, nous pouvons revenir au serveur.
Configuration d’Apache pour le nom de domaine
Dans Apache sur notre serveur, nous devons configurer le nom de domaine. Ce n’est pas obligatoire si vous prévoyez d’avoir un seul site : la configuration par défaut devrait suffire. Mais si vous comptez héberger plusieurs sites, il est préférable de le faire.
Voici un exemple (modifiez-le avec votre nom de domaine) :
<Directory /var/www/goldenlib.nya.je>
Require all granted
</Directory>
<VirtualHost *:80>
ServerName goldenlib.nya.je
ServerAlias www.goldenlib.nya.je
ServerAdmin webmaster@goldenlib.nya.je
DocumentRoot /var/www/goldenlib.nya.je
</VirtualHost>
Ensuite, exécutez :
sudo mkdir -p /var/www/goldenlib.nya.je
sudo a2dissite 000-default.conf
sudo a2ensite goldenlib.nya.je.conf
sudo systemctl reload apache2
Note : Sous Fedora, a2dissite et a2ensite ne sont pas disponibles par défaut. Si vous ne les avais pas, utilisez plutôt :
sudo rm /etc/httpd/conf.d/000-default.conf
sudo cp goldenlib.nya.je.conf /etc/httpd/conf.d/
sudo systemctl reload httpd
Préparation de la base de données et configuration PHP
- Base de données :
sudo mysql -u root
Puis, dans MySQL :CREATE DATABASE wordpress;GRANT ALL ON wordpress.* TO 'wordpressuser' IDENTIFIED BY 'MotDePasse123!';FLUSH PRIVILEGES;quit
(C’est pour l’exemple : mettez un mot de passe solide.)
Remarque : Pour sécuriser MySQL, exécutez :sudo mysql_secure_installation - Configuration PHP :
Modifiez le fichier/etc/php.ini(ou/etc/php/7.2/apache2/php.iniselon votre version) :max_input_time = 30upload_max_filesize = 20Mpost_max_size = 21M
Installation de WordPress
Si tout est bon, passons à la partie facile :
wget https://wordpress.org/latest.tar.gz
tar -xzvf latest.tar.gz
sudo chown -R apache:apache /var/www/goldenlib.nya.je
Une fois les fichiers installés, vous pouvez continuer depuis votre navigateur en tapant votre nom de domaine. Vous pouvez aussi modifier wp-config.php manuellement, mais nous allons supposer que vous n’en avez pas envie après tout ce travail.
Dans l’interface, créez votre compte et liez le site à votre base de données avec les identifiants précédents. Si vous avez un message d’erreur, assurez-vous d’avoir bien enregistré vos DNS.
Mise en place de Certbot pour le SSL
Enfin, nous allons mettre en place Certbot pour obtenir un certificat SSL.
sudo dnf install certbot python3-certbot-apache
sudo certbot --apache
Certbot devrait également renouveler le SSL automatiquement. Vous pouvez tester avec :
sudo certbot renew --dry-run
Vous verrez dans Cockpit un cron job chargé de le faire pour vous.
À partir de maintenant, je peux accéder à mon site via https://goldenlib.nya.je.
Conclusion
À présent, vous avez un site WordPress, un nom de domaine et un SSL. Vous êtes prêt ! Cependant, je vous recommande tout de même de visiter la documentation officielle de Fedora Server. Vous y trouverez des conseils pour sécuriser votre installation et configurer les mises à jour de sécurité automatiques.
Merci d’avoir suivi cet article. Je sais que c’est assez lourd et intense. Si vous souhaitez vous faciliter la gestion, je vous recommande à l’avenir de passer par cPanel sur un autre hebergeur, qui gère les configurations Apache et PHP.
L’idée, c’est de créer un premier site que vous hébergez vous-même. Mais si le sujet vous intéresse, vous n’aurez aucun mal à étendre votre empire de sites web. Pour le reste, soyez créatif : connectez-vous à wp-login.php et construisez votre site !

