Installation WordPress – Apache

Cette installation de wordpress est faites sur les distro linux utilisant les commandes debian. Il est important de faire les mises-à-jour du système sur lequel vous travailler avant de commancer l’installation de wordpress.

sudo apt update && sudo apt upgrade -y

Ensuite, les commandes suivantes vous permettrons d’installer apache2, PHP (ainsi que le extension nécessaire), mariadb :

#installation apache2
sudo apt install apache2 -y

#installation PHP et extension MySql
sudo apt install php php-mysql -y

#Commandes pour vérifier si PHP est activé dans apache
cat /etc/apache2/mods-enabled/php8.*.conf
cat /etc/apache2/mods-enabled/php8.*.load

#téléchargement du repo mariadb
#si curl pas installé "sudo apt install curl apt-transport-https"
curl -LsSO https://r.mariadb.com/downloads/mariadb_repo_setup
chmod +x mariadb_repo_setup
sudo ./mariadb_repo_setup
#installation mariadb
sudo apt install mariadb-server mariadb-client mariadb-backup -y

#installation certbot
sudo apt install certbot python3-certbot-apache

Configuration sécuritaire de la BD (base de données) MariaDB :

sudo mysql_secure_installation
#mot de passe root par défaut sélectionner n
#appuyer sur n pour switch au unix_socket
#appuyer sur y pour choisir un mot de passe root
#appuyer sur y pour retirer les anonymous users
#appuyer sur y pour interdire à l'utilisateur root de se connecter à distance
#appuyer sur y pour supprimer les BD de test
#appuyer sur y afin de recharger la table de privilège

#se connecter au serveur mysql
sudo mysql -u root -p

--Créer la BD wordpress
CREATE DATABASE wordpress;

--Créer un utilisateur avec mot de passe
CREATE USER 'wordpress'@'localhost' IDENTIFIED BY 'MotdePasseFort';

--donner tout les privilèges à la BD
GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost';

--appliquer les changement
FLUSH PRIVILEGES;

--quitter
EXIT;

Ensuite, nous allons télécharger le dossier compréssé contenant wordpress et le décompréssé :

#dossier ou nous allons installer wp
cd /var/www

#création d'un dossier wordpress
sudo mkdir wordpress

#téléchargement de wordpress
wget https://wordpress.org/latest.tar.gz

#décompression du fichier
sudo tar -xzvf latest.tar.gz

#changement de permission et de propriétaire
sudo chown -R www-data:www-data ./wordpress
sudo chmod -R 755 ./wordpress

#suppression du dossier compressé
sudo rm ./latest.tar.gz

#renommer le fichier wp-config-sample.php
mv ./wp-config-sample.php ./wp-config.php #renommer le fichier

#ajouter une config salt sécurisé
#vous pouvez utiliser le lien suivant pour généré des mot de passe fort pour salt : https://api.wordpress.org/secret-key/1.1/salt/
vim ./wp-config.php

La prochaine étape est de rendre notre site accessible via apache2.

#choisir le dossier qui aura la config apache
cd /etc/apache2/sites-available

#copier la config de base
sudo cp 000-default.conf wordpress.conf

#modification de la configuration
sudo vim wordpress.conf
ServerName votrenomde.domaine #décommenter ServerName
ServerAlias www.votrenomde.domaine
ServerAdmin [email protected]
DocumentRoot /var/www/wordpress
...
ErrorLog ${APACHE_LOG_DIR}/wordpress.error.log
CustomLog ${APACHE_LOG_DIR}/wordpress.access.log combined

#activer le site http
sudo a2ensite wordpress.conf
sudo systemctl reload apache2

Le site est maintenant accessible sur le protocol http. On va maintenant demander un certificat ssl pour que le site fonctionne avec https.

#Lancer certbot
sudo certbot

#inscrire le email de l'admin du site web
#accepter les conditions d'utilisation (y)
#choisir si vous souhaiter avoir des email promotionnel (n)
#inscrire les site dont vous souhaiter avoir un certificat ssl "1 2"

Maintenant, il ne reste plus qu’à procéder à la configuration initial de wordpress. Pour ce faire, vous devez vous connecter sur votre site web à l’adresse : https://votredomaine.com/wp-admin

Si tout fonctionne correctement, vous derviez pouvoir vous connecter et voir le tableau de bord de wordpress.