Web

Comment héberger un site WordPress sur un VPS (Stack LEMP)

Installez WordPress de A à Z sur votre VPS Linux avec une stack LEMP (Nginx, MariaDB, PHP-FPM) optimisée pour la performance, et sécurisez-le avec un certificat SSL gratuit.

Niveau

Intermédiaire

Durée de lecture

14 min

Étapes

6

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 WordPresssudo apt install -y nginx mariadb-server php-fpm php-mysql php-curl php-gd php-xml php-mbstring php-zip php-intl # Activer les servicessudo systemctl enable --now nginx mariadb
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 à MariaDBsudo 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;
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 /tmpcurl -O https://fr.wordpress.org/latest-fr_FR.tar.gztar -xzvf latest-fr_FR.tar.gz # Déplacer WordPress dans le dossier websudo mv wordpress /var/www/votre-domaine.com # Attribuer les permissions à Nginxsudo chown -R www-data:www-data /var/www/votre-domaine.comsudo find /var/www/votre-domaine.com -type d -exec chmod 755 {} \;sudo find /var/www/votre-domaine.com -type f -exec chmod 644 {} \;
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;    }}
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 sitesudo ln -s /etc/nginx/sites-available/votre-domaine.com /etc/nginx/sites-enabled/ # Désactiver le site par défautsudo rm -f /etc/nginx/sites-enabled/default # Tester la configuration et rechargersudo nginx -tsudo systemctl reload nginx
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-nginxsudo 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.

Pour terminer

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.

Problèmes fréquents

Pourquoi choisir Nginx plutôt qu'Apache pour WordPress ?

Nginx gère mieux les fortes charges et la concurrence avec une empreinte mémoire réduite. Couplé à PHP-FPM et à un cache, il offre d'excellents temps de réponse, idéal pour un VPS où les ressources sont précieuses.

Comment améliorer encore les performances de mon WordPress ?

Installez un plugin de cache (W3 Total Cache, WP Super Cache ou LiteSpeed Cache), activez la compression Gzip/Brotli dans Nginx, utilisez un CDN et maintenez PHP à jour (8.2 ou 8.3 sont nettement plus rapides que les versions 7.x).

J'obtiens une 'Erreur de connexion à la base de données', que faire ?

Vérifiez que les identifiants saisis dans wp-config.php correspondent exactement à ceux créés dans MariaDB, et que le service MariaDB est bien actif ('sudo systemctl status mariadb').

Ce guide vous a servi ? Les autres sont au même endroit.

Revenir à la liste des guides

Une étape qui ne passe pas ?

Collez votre message d'erreur sur le Discord. C'est souvent réglé en quelques minutes, et ça nous signale les passages à préciser dans le guide.