Installer WordPress sur une instance
Objectif
WordPress est un système de gestion de contenu (CMS) vous permettant de créer et d'administrer des sites web à des fins multiples, sans avoir besoin de compétences particulières en programmation.
Ce tutoriel fournit les étapes de base pour une installation manuelle de WordPress sur une instance Public Cloud : installer un serveur web, configurer la base de données, télécharger et lancer WordPress.
Découvrez comment installer WordPress sur une instance Public Cloud.
Prérequis
- Un projet Public Cloud dans votre compte OVHcloud
- Avoir une instance Public Cloud avec Debian ou Ubuntu installé
- Être connecté à votre espace client OVHcloud
- Disposer d'un accès administratif (sudo) à votre instance via SSH
En pratique
Les instructions suivantes sont vérifiées pour Debian 11. Ubuntu est basé sur Debian et le tutoriel devrait donc également fonctionner pour une distribution Ubuntu actuelle.
Afin d'accéder à votre installation via un nom de domaine, vous devez relier celui-ci à votre instance. Pour ce faire, vous devez éditer la zone DNS accessible depuis votre espace client OVHcloud, à condition que OVHcloud soit votre bureau d'enregistrement et que le nom de domaine utilise les serveurs DNS OVHcloud.
Consultez le guide Éditer sa zone DNS pour en savoir plus. Si le nom de domaine est actuellement utilisé, ne configurez les DNS qu'après l'installation du nouveau WordPress et le démarrage de votre site web.
Étape 1 : installation du serveur web (LAMP)
Afin de pouvoir servir des pages web dynamiques avec WordPress, une stack dite LAMP sera installée sur l'instance. LAMP désigne Linux, Apache, MariaDB et PHP.
Une fois connecté à votre instance via SSH, assurez-vous que tous les paquets sont à jour :
Etant donné que les paquets logiciel sont régulièrement mis à jour, vous devrez peut-être ajuster les instructions suivantes en fonction des dernières versions.
Installez les paquets LAMP :
Étape 2 : configuration du serveur de base de données
MariaDB fournit un script pour vous aider dans la configuration initiale et pour appliquer certains paramètres liés à la sécurité.
Pour l'exécuter, entrez la commande suivante :
Confirmez la première invite en appuyant sur Entrée.
Choisissez ensuite une méthode pour sécuriser les accès à votre serveur de bases de données.
Il est recommandé d'utiliser la méthode d'authentification proposée à la place de l'accès par mot de passe root. Appuyez sur y puis sur Entrée. (Si vous décidez d'utiliser l'accès utilisateur root, tapez n, puis définissez un mot de passe root.)
Entrez n à l'invite suivante :
Les invites suivantes concernant les mesures de sécurité, confirmez-les toutes avec y jusqu'à la fin du script.
Si vous avez configuré l'accès MariaDB de la manière recommandée (unix_socket), vous disposez désormais d'un accès administrateur automatique (root) à celui-ci chaque fois que vous êtes connecté au serveur en tant qu'utilisateur avec des droits élevés (sudo).
Ouvrez le shell MariaDB :
Créez la base de données pour WordPress :
Ensuite, accordez au nouvel utilisateur "wordpress" tous les droits sur cette base de données. Cet utilisateur va accéder à la base de données et effectuer toutes les opérations pour le CMS WordPress. Remplacez your_password par un mot de passe fort pour cet utilisateur.
Vous aurez besoin de ces identifiants plus tard lors de l'installation de WordPress.
La base de données est maintenant prête à être utilisée avec WordPress. Assurez-vous que les changements sont appliqués pour les prochaines étapes, puis quittez le shell MariaDB :
Étape 3 : configurer le firewall
La configuration d'un pare-feu (iptables) permet d'améliorer la sécurité de votre instance WordPress. Ce processus peut être simplifié en utilisant le frontend « Uncomplicated Firewall » (UFW) et son ensemble de profils prédéfinis. Installez UFW :
Dans la liste des applications disponibles pour UFW, les profils correspondant à un serveur web sont nommés « WWW » sur une instance Debian, et « Apache » sur une instance Ubuntu. Ces profils permettent d'ouvrir les ports nécessaires au trafic HTTP et HTTPS de manière simple et sécurisée.
En choisissant « WWW Full », les connexions sécurisées (port 443) et les requêtes http non sécurisées (port 80) au serveur web seront autorisées.
Pour voir quels ports sont affectés par un profil particulier, entrez sudo ufw app info "profile name".
Avec la commande suivante, les ports définis par le profil "WWW Full" seront ouverts :
Comme tous les ports non explicitement autorisés seront bloqués après l'activation du firewall, assurez-vous d'autoriser également les connexions SSH (port 22 dans une configuration par défaut) :
Enfin, activez les règles de pare-feu et vérifiez la configuration :
Vous pouvez aller plus loin avec l'UFW, par exemple si vous souhaitez restreindre les attaques par déni de service (DOS) ou empêcher les requêtes par certaines plages d'adresses IP. Reportez-vous à la documentation officielle de l'UFW.
Étape 4 : installation de WordPress
Rendez-vous sur le site officiel de WordPress afin de récupérer l'URL de téléchargement de la dernière version (au format « tar.gz ). Téléchargez ensuite le fichier :
Décompressez l'archive téléchargée :
Votre serveur Apache doit être prêt à fonctionner à ce stade. Vous pouvez vérifier avec la commande suivante :
Vous pouvez également ouvrir http://ip_de_votre_instance dans un navigateur Web. La page « Apache2 Debian Default Page » devrait s'afficher.
Les étapes suivantes installeront WordPress en remplaçant le dossier Apache par défaut pour les pages web.
Au lieu d'utiliser le dossier par défaut, vous pouvez également créer un nouvel hôte virtuel pour l'installation de WordPress. Ce dernier est utile pour héberger plusieurs sites web, ce qui n'est pas pertinent pour ce tutoriel.
Supprimez le dossier existant :
Remplacez le dossier du serveur web par défaut par le dossier WordPress :
Donnez au serveur Web les droits en écriture (write) dans le dossier :
Le serveur web est maintenant prêt pour la configuration initiale de WordPress.
Étape 5 : configurer WordPress
Ouvrez un navigateur Web et connectez-vous au site WordPress en saisissant l'adresse IP de votre instance (ou le nom de domaine si vous en avez déjà relié un à l'instance). Choisissez une langue sur la première page.
Utilisez l'assistant de configuration WordPress pour donner accès à votre base de données. Renseignez les informations que vous avez configurées précédemment.

L'étape suivante consiste à préconfigurer les informations générales de votre site, puis à créer votre utilisateur administrateur WordPress.

Une fois validé, vous pourrez vous connecter à l'espace d'administration de votre site avec les identifiants définis à l'étape précédente.
Pour établir des connexions sécurisées (https), le serveur web doit être sécurisé via une Autorité de Certification comme Let's Encrypt qui propose des certificats gratuits. Vous devrez installer un outil client (comme « Certbot ») et configurer Apache. Sans cette étape, votre site ne pourra accepter que des requêtes http.
En alternative, OVHcloud vous propose la solution SSL Gateway. Référez-vous à notre documentation pour plus d'informations.
Étape 6 (facultatif) : activer des connexions sécurisées avec Let's Encrypt
Vérifiez en premier lieu que votre nom de domaine dispose des bons enregistrements dans la zone DNS, c'est-à -dire qu'il pointe vers l'adresse IP de votre instance.
La commande suivante installe une version de Certbot qui fonctionne mais est obsolète (certbot 1.12.0). Pour installer la dernière version, vous devez utiliser le gestionnaire de paquets supplémentaire snappy. Vous trouverez les instructions d'installation sur le site de Certbot.
Installez les paquers nécessaires pour le client Certbot :
Obtenez le certificat de votre nom de domaine et du sous-domaine « www » :
Vous devrez renseigner une adresse e-mail valide et accepter les conditions d'utilisation.
Certbot renouvelle automatiquement les certificats. Aucune autre étape n'est requise. Toutefois, vous pouvez consulter les options disponibles pour en savoir plus sur les fonctionnalités de Certbot.
Aller plus loin
Échangez avec notre communauté d'utilisateurs.