Introduction
Héberger WordPress sur votre propre VPS vous offre des performances bien supérieures à un hébergement mutualisé classique et un contrôle total sur votre configuration. Nous utiliserons une stack LEMP — Linux, Nginx (au lieu d'Apache), MariaDB et PHP-FPM — réputée pour sa rapidité et sa faible consommation de ressources. Ce guide couvre l'installation complète sur Debian ou Ubuntu, jusqu'à la sécurisation HTTPS.
1. Installer Nginx, MariaDB et PHP-FPM
Mettez à jour le système puis installez les trois composants de la stack LEMP ainsi que les extensions PHP requises par WordPress (mysql, gd, curl, xml, mbstring, zip...).
sudo apt update && sudo apt upgrade -y
# Installer Nginx, MariaDB et PHP-FPM avec les extensions WordPress
sudo apt install -y nginx mariadb-server php-fpm php-mysql php-curl php-gd php-xml php-mbstring php-zip php-intl
# Activer les services
sudo systemctl enable --now nginx mariadbConseil important
Vérifiez la version de PHP installée avec 'php -v'. Notez-la (ex: 8.2) car vous en aurez besoin pour le chemin du socket PHP-FPM à l'étape 4.
2. Sécuriser MariaDB et créer la base de données
Lancez l'assistant de sécurisation de MariaDB, puis créez une base de données dédiée à WordPress ainsi qu'un utilisateur disposant des droits sur celle-ci.
# Assistant de sécurisation (définir un mot de passe root, supprimer les comptes anonymes)
sudo mysql_secure_installation
# Se connecter à MariaDB
sudo mysql -u root -p
# Dans la console SQL :
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'MOT_DE_PASSE_SOLIDE';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;Conseil important
Remplacez 'MOT_DE_PASSE_SOLIDE' par un mot de passe robuste et conservez-le : il sera demandé lors de la configuration de WordPress.
3. Télécharger et préparer WordPress
Téléchargez la dernière version de WordPress, extrayez-la dans le répertoire web et attribuez les bonnes permissions à l'utilisateur du serveur web (www-data).
cd /tmp
curl -O https://fr.wordpress.org/latest-fr_FR.tar.gz
tar -xzvf latest-fr_FR.tar.gz
# Déplacer WordPress dans le dossier web
sudo mv wordpress /var/www/votre-domaine.com
# Attribuer les permissions à Nginx
sudo chown -R www-data:www-data /var/www/votre-domaine.com
sudo find /var/www/votre-domaine.com -type d -exec chmod 755 {} \;
sudo find /var/www/votre-domaine.com -type f -exec chmod 644 {} \;Conseil important
Pour la version anglaise, remplacez 'fr.wordpress.org/latest-fr_FR.tar.gz' par 'wordpress.org/latest.tar.gz'.
4. Configurer le bloc serveur Nginx
Créez un fichier de configuration Nginx (virtual host) pour votre site. Il indique la racine du site, gère les permaliens WordPress et transmet les fichiers PHP à PHP-FPM.
sudo nano /etc/nginx/sites-available/votre-domaine.com
# Collez la configuration suivante (adaptez le domaine et la version PHP) :
server {
listen 80;
server_name votre-domaine.com www.votre-domaine.com;
root /var/www/votre-domaine.com;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}Conseil important
Adaptez 'php8.2-fpm.sock' à la version de PHP installée à l'étape 1. Vérifiez le nom exact du socket avec 'ls /run/php/'.
5. Activer le site et tester Nginx
Activez votre configuration via un lien symbolique, désactivez le site par défaut, testez la syntaxe de Nginx puis rechargez le service.
# Activer le site
sudo ln -s /etc/nginx/sites-available/votre-domaine.com /etc/nginx/sites-enabled/
# Désactiver le site par défaut
sudo rm -f /etc/nginx/sites-enabled/default
# Tester la configuration et recharger
sudo nginx -t
sudo systemctl reload nginxConseil important
Si 'nginx -t' renvoie une erreur, relisez votre fichier de configuration : une accolade ou un point-virgule manquant en est souvent la cause.
6. Sécuriser avec un certificat SSL et finaliser
Installez Certbot pour obtenir un certificat SSL Let's Encrypt gratuit avec redirection HTTPS automatique. Terminez ensuite l'installation depuis votre navigateur.
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d votre-domaine.com -d www.votre-domaine.com
# Ouvrez ensuite votre site dans le navigateur :
# https://votre-domaine.com
# et suivez l'assistant d'installation WordPress.Conseil important
L'assistant WordPress vous demandera le nom de la base ('wordpress'), l'utilisateur ('wp_user') et le mot de passe créés à l'étape 2.
En conclusion
Votre site WordPress tourne désormais sur une stack LEMP rapide et sécurisée, entièrement sous votre contrôle. Vous bénéficiez de la puissance du stockage NVMe et du réseau de votre VPS UnioHost pour offrir une expérience fluide à vos visiteurs.
WordPress sans la maintenance ?
Notre hébergement web Plesk installe WordPress en 1 clic avec SSL et emails pro inclus, dès 0,50€/mois.
