GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Installation de WordPress sur Ubuntu Linux avec Apache et MySQL

WordPress est resté l'un des moyens les meilleurs et les plus simples de mettre en place un site élégant depuis sa création en 2003. En fait, les tendances actuelles ne font que montrer que sa popularité ne cesse d'augmenter. WordPress est simple à utiliser, et même l'héberger vous-même n'est pas si difficile, comme nous vous le prouverons dans cet article.

Dans ce guide, nous vous montrerons comment faire héberger votre site avec WordPress sur Ubuntu Linux. Nous utiliserons Apache comme serveur HTTP, et installerons également PHP et MariaDB (une implémentation open source de MySQL) car WordPress en a besoin pour fonctionner. Cet assortiment de packages est communément appelé une pile LAMP (Linux, Apache, MySQL, PHP). Une fois ces packages installés, nous passerons en revue la configuration d'Apache et de MySQL, y compris la configuration initiale d'une base de données et d'un utilisateur, avant d'installer WordPress lui-même. Vers la fin, nous vous montrerons également comment configurer un certificat SSL auto-signé ou en obtenir un gratuitement auprès de Let's Encrypt, qui permet à votre site d'utiliser HTTPS.

Dans ce didacticiel, vous apprendrez :

  • Comment installer et configurer Apache
  • Comment installer et configurer MariaDB pour MySQL
  • Comment configurer un utilisateur MySQL et une base de données pour WordPress
  • Comment télécharger et installer WordPress
  • Comment configurer un certificat SSL auto-signé pour votre site WordPress
  • Comment configurer un certificat SSL gratuit de Let's Encrypt

Menu d'administration WordPress

Configuration logicielle requise et conventions de ligne de commande Linux
Catégorie Exigences, conventions ou version du logiciel utilisée
Système Ubuntu Linux
Logiciel WordPress, Apache, PHP, MariaDB, certificat SSL
Autre Accès privilégié à votre système Linux en tant que root ou via le sudo commande.
Conventions # - nécessite que les commandes linux données soient exécutées avec les privilèges root soit directement en tant qu'utilisateur root, soit en utilisant sudo commande
$ – nécessite que les commandes linux données soient exécutées en tant qu'utilisateur normal non privilégié

Installer Apache, PHP et MySQL

La première chose que nous devrons faire est de préparer notre système Ubuntu avec les packages logiciels appropriés. WordPress ne peut fonctionner que si nous lui fournissons un serveur HTTP, PHP et ses modules associés, et une base de données MySQL. Ouvrez un terminal et tapez les deux commandes suivantes pour installer Apache, PHP et MariaDB, qui est un fork open source de MySQL :

$ sudo apt update$ sudo apt install apache2 php libapache2-mod-php mariadb-server mariadb-client php-mysql php-curl php-xml php-mbstring php-imagick php-zip php-gd

Cela fait beaucoup de packages à installer, et oui, ils sont tous nécessaires. Sans certains des modules PHP supplémentaires, vous n'obtiendrez pas un score parfait dans la section "État de santé du site" du tableau de bord de l'administrateur WordPress.

Configurer MySQL

L'une des premières choses que nous devrions faire est de préparer notre base de données WordPress. Pour ce faire, nous devons d'abord effectuer une configuration initiale de MySQL. Pour commencer, exécutez la commande suivante dans le terminal :

$ sudo mysql_secure_installation

Laissez la première réponse vide et appuyez sur Entrée. Vous devez répondre par y (oui) au reste des invites et configurez un mot de passe root lorsque vous y êtes invité. Cette configuration ne prend que quelques instants.

La configuration initiale de MySQL avec mysql_secure_installation

Bien que la configuration ci-dessus suffira facilement pour notre site WordPress, vous pouvez lire notre guide sur Installer et configurer MySQL Workbench sur Ubuntu Linux si vous êtes assez curieux pour plonger un peu plus profondément.

Créer une base de données pour WordPress

WordPress stocke tout son contenu de publication et de page, entre autres informations, à l'intérieur de MySQL. Nous devrons configurer un utilisateur MySQL et une base de données pour que WordPress puisse y accéder en procédant comme suit :

  1. Commencez par ouvrir MySQL avec l'utilisateur root :
    $ sudo mysql
  2. Créer une nouvelle base de données pour WordPress. Dans cet exemple, nous appellerons le nôtre wordpress_db , mais vous pouvez utiliser le nom de votre choix.
    MariaDB [(none)]> CREATE DATABASE wordpress_db ;
  3. Ensuite, nous devons créer un nouvel utilisateur que WordPress pourra utiliser pour accéder à la base de données que nous venons de créer. Pour cet exemple, nous allons faire de notre nom d'utilisateur wordpress_user et notre mot de passe my_password . Remplacez le my_password texte ci-dessous avec un mot de passe sécurisé (et notez-le quelque part pour plus tard) :
    MariaDB [(none)]> CREATE USER 'wordpress_user'@'localhost' IDENTIFIED BY 'my_password' ;
  4. Ensuite, accordez à l'utilisateur WordPress toutes les autorisations sur la base de données WordPress :
    MariaDB [(none)]> GRANT ALL PRIVILEGES ON wordpress_db.* to wordpress_user@'localhost' ;
  5. Enfin, enregistrez les modifications que vous avez apportées aux autorisations des utilisateurs et quittez MariaDB :
    MariaDB [(none)]> FLUSH PRIVILEGES;MariaDB [(none)]> exit

Configuration de la base de données MySQL et de l'utilisateur pour WordPress

Configurer Apache

Apache devrait déjà être installé et en cours d'exécution à ce stade, et cela peut être vérifié en ouvrant un navigateur et en naviguant vers l'adresse de bouclage 127.0.0.1 ou juste localhost sur votre système.

Page Apache par défaut, indiquant que notre site Web est accessible

Bien qu'Apache héberge déjà notre site (ou qu'il n'en héberge pas), il est préférable de configurer un nouveau fichier d'hôte virtuel Apache pour notre installation WordPress. Cela vous permettra plus de flexibilité à l'avenir si vous souhaitez héberger plusieurs sites Web ou apporter des modifications à l'emplacement d'installation du répertoire WordPress, etc.

  1. Copiez la configuration Apache par défaut dans un nouveau fichier avec la commande suivante :
    $ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/wordpress.conf 
  2. Ensuite, utilisez nano ou votre éditeur de texte préféré pour ouvrir ce fichier :
    $ sudo nano /etc/apache2/sites-available/wordpress.conf
  3. Changer le DocumentRoot réglage à l'endroit où nous prévoyons d'installer WordPress. Le répertoire ci-dessous est notre suggestion.
    DocumentRoot /var/www/wordpress
  4. Créer un paramètre pour ServerName et entrez le nom de domaine complet de votre site Web. Si vous n'en avez pas, laissez-le comme localhost.
    ServerName your-site.com
  5. Créer un alias pour le www préfixe également. Ce n'est pas nécessaire si vous utilisez simplement localhost.
    ServerAlias ​​www.your-site.com

    Voici à quoi devrait ressembler votre fichier de configuration lorsque vous avez terminé. Notez que nous avons commenté la ligne d'alias dans notre configuration puisque nous n'hébergeons que localement.

  6. Remplir les valeurs DocumentRoot et ServerName dans le fichier d'hôte virtuel Apache

  7. Enregistrez vos modifications et quittez le fichier. Ensuite, activez le site dans Apache et désactivez le site par défaut.
    $ sudo a2ensite wordpress.conf$ sudo a2dissite 000-default.conf
  8. Enfin, rechargez Apache pour que les nouvelles modifications prennent effet.
    $ sudo systemctl reload apache2

Téléchargez et installez WordPress

Maintenant que notre serveur HTTP est configuré et que PHP et MySQL sont prêts, nous pouvons passer à l'installation de WordPress lui-même.

  1. Tout d'abord, utilisez wget pour télécharger la dernière version de WordPress :
    $ wget -O /tmp/wordpress.tar.gz https://wordpress.org/latest.tar.gz
  2. Extraire l'archive tar dans le répertoire de votre site WordPress :
    $ sudo tar -xzvf /tmp/wordpress.tar.gz -C /var/www
  3. Assurez-vous de configurer les autorisations appropriées sur le répertoire et tous ses fichiers.
    $ sudo chown -R www-data.www-data /var/www/wordpress
  4. Nous pouvons maintenant commencer à configurer WordPress. Ouvrez votre navigateur Internet et accédez soit à l'adresse localhost 127.0.0.1 ou votre nom de domaine complet si vous en créez un. Vous devriez être accueilli par l'assistant de configuration de WordPress. Cliquez sur "Allons-y" pour commencer.
  5. Assistant de configuration initiale de WordPress

  6. Ensuite, entrez les informations de base de données que vous avez configurées précédemment. Les deux dernières cases (hôte de la base de données et préfixe de la table) peuvent être laissées à leurs valeurs par défaut. Cliquez sur "Soumettre" lorsque vous avez terminé.
  7. Remplissez les informations de la base de données MySQL que nous avons configurées précédemment

  8. WordPress tentera d'établir une connexion avec la base de données et vous fera savoir si cela a réussi. En supposant que ce soit le cas, cliquez sur "Exécuter l'installation" pour continuer.
  9. WordPress s'est connecté avec succès à notre base de données MySQL

  10. L'écran suivant vous demandera des informations générales sur votre nouveau site. Une fois que vous avez terminé de remplir ce formulaire, cliquez sur "installer WordPress" en bas de l'écran pour finaliser l'installation.
  11. Remplissez le titre de votre site, votre nom d'utilisateur, votre mot de passe et votre adresse e-mail

  12. L'installation de WordPress est maintenant terminée ! Vous pouvez cliquer sur le bouton "Connexion" pour commencer à créer du contenu.
  13. WordPress a été installé avec succès. Cliquez sur se connecter pour trouver le menu d'administration

Notez que pour revenir au panneau d'administration WordPress à l'avenir, vous pouvez toujours utiliser l'URL http://127.0.0.1/wp-admin (ou remplaçant 127.0.0.1 avec votre nom de domaine complet).

Menu d'administration WordPress

Votre site WordPress devrait maintenant être accessible depuis http://127.0.0.1 ou votre nom de domaine complet.

Notre site WordPress est maintenant opérationnel

Configurer un certificat SSL auto-signé

Nous avons terminé la configuration de notre site WordPress, mais pour le moment, il utilise HTTP au lieu de HTTPS. Avec une grande partie du Web passant exclusivement au HTTPS, vous voudrez peut-être également l'envisager pour votre site, même si ce n'est pas strictement nécessaire. Dans cette section du guide, nous vous montrerons comment activer SSL sur votre site Web avec un certificat auto-signé.

  1. Saisissez la commande suivante dans le terminal pour générer un certificat auto-signé. Vous serez invité avec quelques questions générales. Assurez-vous de remplir le champ "nom commun" avec l'adresse IP de votre site Web ou le nom de domaine complet.
    $ sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private /apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt
  2. Création d'un certificat SSL auto-signé

  3. Ensuite, nous devons apporter quelques modifications à la configuration de notre site Apache. Ouvrez le fichier de configuration SSL par défaut avec nano ou un autre éditeur de texte :
    $ sudo nano /etc/apache2/sites-available/default-ssl.conf
  4. Changer le DocumentRoot valeur à l'endroit où vous avez installé WordPress plus tôt. Ensuite, modifiez le SSLCertificateFile et SSLCertificateKeyFile valeurs à l'endroit où nous avons enregistré nos fichiers SSL. Voir la capture d'écran ci-dessous pour référence.
    DocumentRoot /var/www/wordpressSSLCertificateFile /etc/ssl/certs/apache-selfsigned.crtSSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key
  5. Modifiez les valeurs de DocumentRoot et de certificat SSL dans le fichier d'hôte virtuel SSL d'Apache

  6. Enregistrez vos modifications et quittez le fichier. Ensuite, activez le module SSL pour Apache et redémarrez pour que les modifications prennent effet :
    $ sudo a2enmod ssl$ sudo systemctl restart apache2
  7. Enfin, activez le site SSL que nous avons configuré et rechargez Apache :
    $ sudo a2ensite default-ssl$ sudo systemctl reload apache2

Terminé. Votre site WordPress est désormais capable d'utiliser le cryptage SSL :

HTTPS est maintenant activé sur notre site WordPress

Configurer un certificat SSL gratuit de Let's Encrypt

Let's Encrypt est un service gratuit qui fournit des sites Web avec des certificats SSL. Si vous êtes arrivé jusqu'ici et que vous avez configuré votre site WordPress sur Ubuntu, il ne reste que quelques étapes supplémentaires pour configurer le cryptage SSL, ce qui empêchera les attaques de l'homme du milieu, aidera le référencement de votre page et les navigateurs comme Firefox ne le feront pas. avertir les utilisateurs que votre site n'est pas sécurisé.

Ce processus est très simple et tout doit être fait à partir de la ligne de commande Ubuntu. Suivez les étapes ci-dessous pour terminer la configuration de votre site Web avec un certificat SSL de Let's Encrypt.

  1. Pour configurer le chiffrement SSL à l'aide de Let's Encrypt, installez l'utilitaire certbot avec la commande suivante.
    $ sudo apt install certbot python3-certbot-apache
  2. Configurez le certificat SSL en exécutant la commande suivante et en suivant les invites qui s'affichent. La dernière question vous demandera si vous souhaitez rediriger les requêtes HTTP directement vers HTTPS. Il est recommandé d'opter pour cela. Évidemment, pour que cela fonctionne, le domaine doit pointer correctement vers l'adresse IP de notre serveur accessible au public.
    $ sudo certbot --apache

C'est tout ce qu'on peut en dire. Le certbot L'utilitaire fait presque tout le travail pour nous et apportera toutes les modifications nécessaires à vos fichiers d'hôte virtuel Apache. Il gardera également votre certificat SSL actif, en le renouvelant chaque fois qu'il est sur le point d'expirer.

Réflexions finales

Ce guide vous a montré comment installer des composants de premier ordre pour exécuter un site Web WordPress sur Ubuntu Linux. WordPress est un système de gestion de contenu génial avec une configuration pratiquement sans fin. C'est si simple que quelqu'un sans aucune expérience de codage HTML, CSS ou PHP peut avoir un superbe site Web. Assurez-vous de parcourir les menus de WordPress pour voir tout le pouvoir de personnalisation dont vous disposez à portée de main.


Ubuntu
  1. Installer et démarrer avec MySQL Workbench sur Ubuntu

  2. Comment activer et désactiver le module PHP curl avec Apache sur Ubuntu Linux

  3. Exemples simples de CGI et Apache sur Ubuntu Linux

  4. Ubuntu 20.04 :WordPress avec l'installation de Nginx

  5. Installer WordPress sur Linux avec Apache

Installer WordPress avec LEMP Stack sur Ubuntu 20.04

Comment configurer WordPress sur Ubuntu Server avec Apache

Installer WordPress avec LEMP Stack sur Ubuntu 20.04

Installer Apache OpenOffice dans Ubuntu et Linux Mint

Comment installer LEMP WordPress Ubuntu et Debian avec Virtualhost

Comment installer LAMP sur Ubuntu 15.10 (Linux, Apache, MySQL et PHP)