Joomla! est un CMS utilisant PHP et MySQL. C'est le second CMS le plus utilisé au monde après WordPress et avant Drupal.
Pour installer Joomla! vous aurez besoin d'un serveur HTTP, de PHP, et d'un serveur de base de données MySQL (MySQL ou MariaDB).
N'hésitez pas à contacter le support de l'hébergeur si ce n'est pas le cas.
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), nous allons créer un hôte virtuel pour Joomla!, dont la racine sera /var/www/joomla
:
sudo nano /etc/apache2/sites-available/joomla.conf
Ce qui ouvre avec l'éditeur nano un fichier dans lequel nous allons coller :
<VirtualHost *:80> ServerName joomla.localhost DocumentRoot /var/www/joomla <Directory /var/www/joomla> AllowOverride all Require all granted </Directory> ErrorLog /var/log/apache2/error.joomla.log CustomLog /var/log/apache2/access.joomla.log combined </VirtualHost>
Si un nom de domaine pointe sur le serveur, on l'indique à la place de joomla.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 joomla sudo systemctl reload apache2
Tout d'abord téléchargeons la dernière version française de Joomla! :
wget -O Joomla.zip https://github.com/AFUJ/joomla-cms-fr/releases/download/3.9.15.1/Joomla_3.9.15-Stable-Full_Package_French_v1.zip
Ensuite nous allons extraire le contenu du zip à la racine de notre hôte virtuel (/var/www/joomla
dans cet exemple) :
sudo unzip Joomla.zip -d /var/www/joomla
Nous allons aussi créer un fichier de configuration vide :
sudo touch /var/www/joomla/configuration.php
On va renforcer la sécurité en attribuant des droits restrictifs aux fichiers :
sudo chown -R $USER:www-data /var/www/joomla chmod -R a-rwx,u+rwX,g+rX /var/www/joomla chmod -R g+w /var/www/joomla/cache /var/www/joomla/tmp /var/www/joomla/administrator/cache /var/www/joomla/administrator/logs /var/www/joomla/configuration.php
Pour créer la base de données qu'utilisera Joomla!, le plus simple est de se connecter avec le client MySQL :
sudo mysql
On arrive alors sur la console SQL sur laquelle nous allons entrer ces commandes (en remplaçant mot_de_passe
) :
CREATE DATABASE joomla; CREATE USER 'juser'@'localhost' IDENTIFIED BY 'mot_de_passe'; GRANT ALL ON joomla.* TO 'juser'@'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ées joomla
à laquelle l'utilisateur juser
aura accès.
Joomla! devrait alors être accessible à l'adresse http://joomla.localhost/, et cette adresse nous redirige sur une interface qui nous permet de finaliser l'installation en 4 étapes.
Il faudra remplir plusieurs champs pour chacune de ces étapes. La description de ces champs est bien indiquée et vous ne devriez pas rencontrer de problème particulier.
À l'étape 2 renseignez les champs de cette manière :
juser
juser
joomla
Pour le reste, conservez les valeurs par défaut.
À l'étape 3, laissez la couche FTP désactivée et cliquez directement sur Suivant.
À l'étape 4 choisissez en Type de site les données que vous souhaitez voir insérées sur votre nouveau site (elles peuvent vous servir d'exemple). Vérifiez dans l'encart Pré-installation que tous les voyants sont verts puis cliquez sur Installer.
Finalement, supprimez le répertoire de l'installeur :
rm -rf /var/www/joomla/installation
Votre site est désormais installé et accessible à l'adresse http://joomla.localhost. Son administration est accessible à l'adresse http://joomla.localhost/administrator/.
Rendez vous dans l'administration de votre Joomla!, puis cliquez sur Configuration. Dans les Paramètres SEO, mettre oui pour Réécriture d'URL en clair (SEF) et Réécriture au 'vol' des URL. Puis cliquez sur Enregistrer.
Activez le module mod_rewrite :
sudo a2enmod rewrite
Puis renommez le fichier htaccess.txt
:
mv /var/www/joomla/htaccess.txt /var/www/joomla/.htaccess
Actualisez la page d'accueil du site (après un certain temps si vous avez activé la mise en cache, par défaut 15min), pour que les liens de la page d'accueil soient changés. Appréciez les nouvelles URLs de la forme /catégorie/id-article
.
Voir cette documentation.
Pour mettre à jour l'intégralité de Joomla!, le serveur a besoin d'un accès en lecture et en écriture à l'ensemble des fichiers. Il faut donc l'y autoriser temporairement :
chmod -R g+w /var/www/joomla
On effectue ensuite la mise à jour via l'interface d'administration de Joomla! : http://joomla.localhost/administrator/.
Puis on rétablit les permissions sécurisées :
chmod -R a-rwx,u+rwX,g+rX /var/www/joomla chmod -R g+w /var/www/joomla/cache /var/www/joomla/tmp /var/www/joomla/administrator/cache /var/www/joomla/administrator/logs /var/www/joomla/configuration.php