WordPress Apache

De Epsi-Wis
Aller à la navigation Aller à la recherche

WordPress est le CMS le plus utilisé du monde. En 2018 il représente presque un tiers des sites Internet !

C'est un projet né en 2003, ce qui est ancien pour une technologie du Web.

Cause et conséquence de cette gigantesque communauté : il propose une quantité sidérante d'extensions qui étendent ses fonctionnalités au delà du raisonnable (plus de 54000 plugins sur le dépôt officiel en 2018).

Installation

Le site officiel propose 2 documentations concernant l'installation de WordPress : une succincte, l'autre plus complète.

WordPress étant une solution destinée à être déployée sur un serveur, toutes les manipulations dont nous traiterons ici se feront en ligne de commande.

Prérequis

Pour installer WordPress vous aurez besoin d'un serveur HTTP, de PHP, et d'un serveur de base de données MySQL (MySQL ou MariaDB).

Apache est le serveur HTTP le plus couramment utilisé, et cette configuration (en conjonction avec MySQL et PHP) s'appelle une pile LAMP.

Donc pour installer Apache, PHP et MySQL ou MariaDB, suivez cette documentation.

Une fois la pile LAMP installée (avec les modules PHP les plus courants), on active le module mod_rewrite, dont a aussi besoin WordPress :

sudo a2enmod rewrite

Nous allons ensuite créer un hôte virtuel pour WordPress, dont la racine sera /var/www/wordpress :

sudo nano /etc/apache2/sites-available/wordpress.conf

Ce qui ouvre avec l'éditeur nano un fichier dans lequel nous allons coller :

<VirtualHost *:80>
        ServerName wordpress.localhost
        DocumentRoot /var/www/wordpress
        <Directory /var/www/wordpress>
                AllowOverride all
                Require all granted
        </Directory>
        ErrorLog /var/log/apache2/error.wordpress.log
        CustomLog /var/log/apache2/access.wordpress.log combined
</VirtualHost>

Si un nom de domaine pointe sur le serveur, on l'indique à la place de wordpress.localhost pour la directive ServerName. (Ctrl+X puis O pour quitter en sauvegardant)


Finalement, on active l'hôte virtuel et on recharge la configuration d'Apache :

sudo a2ensite wordpress
sudo systemctl reload apache2

Si votre serveur est sur le Web, pensez à sécuriser l'accès au site en particulier en forçant HTTPS.

Installation de WordPress

Copie des fichiers

Tout d'​abord téléchargeons la dernière version de WordPress :

wget https://fr.wordpress.org/wordpress-latest-fr_FR.zip

Ensuite nous allons extraire le contenu du zip à la racine de notre hôte virtuel (/var/www/wordpress dans cet exemple) :

sudo unzip wordpress-latest-fr_FR.zip -d /var/www

On va renforcer légèrement la sécurité en attribuant des droits un peu restrictifs aux fichiers :

sudo chown www-data:www-data /var/www/wordpress -R
sudo chmod -R -wx,u+rwX,g+rX,o+rX /var/www/wordpress

(WordPress exige que les fichiers soient modifiables par le serveur et appartiennent à www-data pour faire fonctionner les mises à jour automatiques)

Création de la base de données

Pour créer la base de données qu'utilisera WordPress, le plus simple est de se connecter avec le client MariaDB :

sudo mysql -u root -p

On arrive alors sur la console SQL sur laquelle nous allons entrer ces commandes (en remplaçant mot_de_passe) :

CREATE DATABASE wordpress;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'mot_de_passe';
GRANT ALL ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
QUIT;

Il faut remplacer mot_de_passe par un vrai mot de passe complexe qu'on note pour la prochaine étape.

On vient de créer la base de donnée wordpress à laquelle l'utilisateur wpuser aura accès.

Installation via l'interface web

WordPress devrait alors être accessible à l'​adresse du site, et cette adresse nous redirige sur une interface qui nous permet de finaliser l'installation.

Cliquez sur C'est parti ! et renseignez les différents champs :

  • Nom de la base de données : wordpress
  • Identifiant : wpuser
  • Mot de passe : le mot de passe qu'on a noté à l'étape précédente (lors de la création de la base de donnée et de l'utilisateur wpuser)
  • Adresse de la base de données : localhost
  • Préfixe des tables : wp_

Après avoir cliqué sur Lancer l'installation, on tombe sur un second formulaire.

Il s'agit cette fois de définir un administrateur pour WordPress. Les champs sont assez clairs. Le titre du site sera visible par les internautes. Concernant le mot de passe il est conseillé de conserver celui proposé par défaut qui est très fort. Vous pouvez par exemple le sauvegarder dans un gestionnaire de mots de passe tel que KeePass. Il est conseillé également de renseigner une adresse de messagerie existante, ce qui vous permettra de récupérer votre mot de passe en cas de perte, ou de faire fonctionner les notifications par courriel. Attention cependant si vous souhaitez y accéder depuis un hote distant il faut mettre l'ip de celui ci dans le virtual host > Server Name