Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
joomla [Le 08/01/2011, 20:08]
clement.analogue Ajout de la partie "Problème connu"
joomla [Le 07/11/2020, 23:32] (Version actuelle)
krodelabestiole restaurée (pas de bugs de beta dans la doc, demande d'aide -> forum)
Ligne 1: Ligne 1:
-{{tag>Lucid CMS BROUILLON}}+{{tag>xenial bionic serveur internet cms}}
  
-----+{{  https://​upload.wikimedia.org/​wikipedia/​commons/​thumb/​e/​e8/​Joomla!-Logo.svg/​2560px-Joomla!-Logo.svg.png?​240}}
  
 ====== Joomla! ====== ====== Joomla! ======
  
-===== Qu'est ce que c'est ? ===== +[[wpfr>Joomla!]] est un [[:CMS]] utilisant [[:​PHP]] ​et [[:MySQL]]C'est le second CMS le plus utilisé au monde après ​[[:WordPress]] et avant [[:Drupal]].
-{{  http://​upload.wikimedia.org/​wikipedia/​fr/​7/​7f/​Joomla_Logo.png?​140}} +
-Joomla! est un système de gestion de contenu (en anglais, ​CMS, pour Content Management system) Open source sous licence GNU/GPL. +
-Joomla! est chapeauté par Open Source Matters , Inc., organisation à but non lucratif basée aux États-Unis dont la mission est de fournir une structure légale ​et financière au projetLes statuts de l'organisation sont consultables ​[[http://​www.opensourcematters.org|ici]].+
  
-S'il est d'​abord orienté gestion de contenu, c'​est-à-dire destiné à mettre en ligne des articles et des news, Joomla peut en quelques clics être " détourné " en portail, site de boutique en ligne, site communautaire,​ site personnel, etc., ce grâce aux centaines d'​extensions disponibles sur le web.+===== Installation =====
  
-==== Qu'est ce qu'un CMS ? ==== +==== Prérequis ​====
-  * **Pour faire simple, un [[CMS]] (système de gestion de contenu) est un logiciel web qui permet de créer un site internet dynamique en toute simplicité,​ sans connaissances techniques particulières,​ l'​idée étant de séparer le volet technique du logiciel de la forme et du contenu qui seront eux la partie visible de l'​iceberg : votre site tel qu'il sera vu par vos futurs visiteurs.**+
  
 +Pour installer Joomla! vous aurez besoin d'un [[:​web#​serveurs|serveur HTTP]], de [[:PHP]], et d'un serveur de base de données MySQL ([[:MySQL]] ou [[:​MariaDB]]).
  
-===== Pré-requis ===== +<​note>​Sur ​un hébergement web géré par l'​hébergeur,​ ces prérequis devraient déjà être en place, donc toutes ces étapes devraient être inutiles.
-Pour installer et utiliser Joomla!, il vous faut un [[:​lamp|serveur LAMP]] installé et fonctionnel.+
  
-<note warning>​Depuis la version Joomla 1.5.6, si vous exécutez sur un serveur php 5,  une version PHP supérieure ​à 5.0.10 est nécessaire (uniquement ​si votre serveur ​est en php5, ne concerne ​pas les serveurs php4 !) +N'​hésitez pas à contacter le support de l'​hébergeur ​si ce n'est pas le cas.</​note>​
  
-NotaPHP 5.0.4 ne doit surtout pas être utilisé avec Joomla !  +[[:apache2|Apache]] est le serveur HTTP le plus couramment ​utilisé, et cette configuration (en conjonction ​avec MySQL et PHP) s'appelle une pile [[:​LAMP|LAMP]].
-En cas de mise à jour d'un site antérieur à Joomla 1.5.10, il faut impérativement éditer la configuration globale et la re-sauvegarder !!!+
  
-Depuis la 1.5.15Joomla! est désormais compatible avec la version ​PHP 5.3mais si vous passez sur un serveur en PHP 5.3.x, pensez a vérifier que vos extensions Joomla sont aussi compatibles ! +Donc pour installer [[:​apache2|Apache]][[:PHP]] et [[:MySQL]] ou [[:​MariaDB]]suivez [[:​LAMP#​installation|cette documentation]].
-</​note>​+
  
 +Une fois la pile [[:LAMP]] installée (avec les modules PHP les plus courants), nous allons créer un [[:​apache2#​hotes_virtuels|hôte virtuel]] pour Joomla!, dont la racine sera ''/​var/​www/​joomla''​ :
 +<​code>​sudo nano /​etc/​apache2/​sites-available/​joomla.conf</​code>​
 +Ce qui ouvre avec [[:​nano|l'​éditeur nano]] un fichier dans lequel nous allons coller :
 +<file - joomla.conf><​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></​file>​
 +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)
  
-===== Installation de Joomla! ===== +Finalement, on active l'​hôte virtuel et on recharge ​la configuration d'​Apache ​
-Créez un répertoire pour votre site à la racine de votre serveur (par défaut /var/www ; ou dans le répertoire de xampp pour ceux qui utilisent xampp.) ​:\\ +<​code>​sudo a2ensite ​joomla 
-Par exemple : //​site-joomla//​ +sudo systemctl reload apache2</code>
-  ​sudo mkdir /​var/​www/​site-joomla +
-   +
-[[http://​aide.joomla.fr/​telechargements/​index.php|Téléchargez Joomla!]] puis décompressez (avec les [[:​sudo|droits administrateur]]) l'​[[archivage|archive]] dans ce nouveau répertoire.\\ +
-Exemple avec le fichier //​Joomla_1.5.20-Stable-Full_Package_FR.zip//​ téléchargé dans votre Dossier personnel : +
-  cd /​var/​www/​site-joomla +
-  sudo unzip ~/Joomla_1.5.20-Stable-Full_Package_FR.zip+
  
 +<note important>​Si votre serveur est sur le [[:Web]], pensez à [[:​apache2#​securite|sécuriser]] l'​accès au site en particulier en forçant [[:​apache2#​HTTPS]].</​note>​
  
-==== Etape 1 ====+==== Installation de Joomla! ​====
  
-Lancez votre [[:​navigateur]] préféré et dans la barre d'​adresse saisissez la ligne suivante: +=== Copie des fichiers ===
-  http://​localhost/​site-joomla/​installation/​index.php +
-   +
-Bien sûr, remplacez //​site-joomla//​ par le nom de votre dossier que vous venez de créer. Vous devez tomber sur une page similaire à celle ci-dessous.\\ \\ +
-{{ :​Etape1.png?​500 }}+
  
 +Tout d'​​abord téléchargeons la dernière version française de Joomla! :
 +<note important>​Adaptez la commande suivante au numéro de la dernière version que vous trouverez [[https://​github.com/​AFUJ/​joomla-cms-fr/​releases/​latest|ici]].</​note>​
 +<​code>​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</​code>​
  
-Sélectionnez ​la langue ​de l'installation, ​Joomla ​vous propose le français par défaut.+Ensuite nous allons extraire le contenu du zip à la racine ​de notre hôte virtuel (''/​var/​www/​joomla''​ dans cet exemple) : 
 +<​code>​sudo unzip Joomla.zip -d /​var/​www/​joomla</​code>​
  
-**EDIT:** si vous obtenez une page où tous les accents sont mal affichés, vous pouvez résoudre ce problème en empêchant le serveur Apache de forcer l'​utilisation de l'​encodage UTF-8 (ce qui ne sera correct qu'à partir de Joomla 1.5).+Nous allons aussi créer un fichier de configuration vide : 
 +<​code>​sudo touch /​var/​www/​joomla/​configuration.php</​code>​
  
-Dans ce cas, comme indiqué dans la documentation lamp_plus, ​[[:tutoriel:​comment_editer_un_fichier|Éditez le fichier]] **/etc/apache2/conf.d/charset** de façon à ce qu'il contienne : +On va renforcer ​la sécurité en attribuant des [[[[:apache2#​permissions|droits]] restrictifs aux fichiers : 
-<​file>​AddDefaultCharset off</file>+<​code>​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</code>
  
-==== Etape 2 ====+=== Création de la base de données ​===
  
-Cliquez sur "​suivant"​ pour passer à l'​étape 2. **Pendant toute l'​installation vous devez utiliser les flèches suivant et précédant ​de l'installateuret non celles ​de votre navigateur.**+Pour créer la base de données qu'utilisera Joomla!le plus simple est de se connecter avec le client [[:MySQL]] : 
 +<​code>​sudo mysql</​code>​
  
-{{ :Etape2.png?500 }}+On arrive alors sur la console SQL sur laquelle nous allons entrer ces commandes (en remplaçant ''​mot_de_passe''​) ​: 
 +<code mysql>​CREATE DATABASE joomla; 
 +CREATE USER '​juser'​@'​localhost'​ IDENTIFIED BY '​mot_de_passe';​ 
 +GRANT ALL ON joomla.* TO '​juser'​@'​localhost';​ 
 +FLUSH PRIVILEGES;​ 
 +QUIT;</​code>​ 
 +Il faut remplacer ''​mot_de_passe''​ par un vrai mot de passe complexe qu'on note pour la prochaine étape.
  
-Comme vous le remarquerez,​ le fichier //​configuration.php//​ n'est pas accessible en écriture, mais c'est normal. Sinon, le paramètre Joomla! RG_EMULATION est sur `ON`, laissez pour l'instant, nous verrons ça plus tard.\\ +On vient de créer la base de données ​''​joomla'​' ​à laquelle ​l'utilisateur ​''​juser''​ aura accès.
-Ce qui nous intéresse pour le moment, ce sont les accès aux répertoires de notre site par l'installateur de Joomla!. Pour qu'il puisse avoir accès, nous allons modifier l'​accès ​en écriture pour le groupe d'​utilisateurs //​www-data//​.\\ +
-Dans votre terminal, tapez la commande suivante, pour modifier le groupe du répertoire de votre site : +
-  cd /​var/​www/​site-joomla +
-  sudo chown -Rv root:​www-data ../​site-joomla +
-//modifiez site-joomla par le nom du répertoire de votre site//\\ +
-**EDIT:** Insérez les options //-Rv// pour modifier les sous-fichiers et les sous-documents,​ autrement le groupe propriétaire restera //root// et pour visualiser les opérations.+
  
-Finalement, il faut rendre le répertoire accessible en écriture pour le groupe //​www-data//​.\\ +=== Installation via l'interface web ===
-Dans votre terminal, taper la commande suivante (la première ligne n'est pas nécessaire si vous vous trouvez déjà dans le répertoire de votre site) : +
-  cd /​var/​www/​site-joomla +
-  sudo chmod -R g+w ./ +
-//modifiez site-joomla par le nom du répertoire de votre site//\\ +
-chmod sert à changer les droits en accès des fichiers. +w ajoute le droit en écriture (write), g spécifiant que ce droit doit être ajouté seulement au groupe.+
  
-Maintenant, cliquez sur le bouton "​vérifiez ​à nouveau"​, et tout devrait être ok.+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.
  
-==== Etape 3 ====+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.
  
-{{ :Etape3.png?500 }}+À l'​**étape 2** renseignez les champs de cette manière ​: 
 +  * **Nom d'​utilisateur** : ''​juser''​ 
 +  * **Mot de passe** : le mot de passe qu'on a noté lors de la création de la base de donnée et de l'​utilisateur ''​juser''​ 
 +  * **Nom de la base de données** : ''​joomla''​ 
 +Pour le reste, conservez les valeurs par défaut.
  
-La page de la licence de Joomla! (qui est la **GNU/GPL**) s'​affiche)acceptez ​la licence en cliquant ​sur //​Suivant//​.+À l'**étape 3**, laissez ​la couche FTP désactivée et cliquez directement ​sur //​Suivant//​.
  
-==== Etape ====+À 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//​.
  
-{{ :​Etape4.png?​500 }}+=== Finalisation ===
  
-Nous voilà sur la page de renseignements du serveurde la base de données et de l'​utilisateur de la base. Pour cela, remplissez les champs suivants : +Finalementsupprimez ​le répertoire ​de l'installeur ​
-  * Type de serveur : MySql +<​code>​rm -rf /​var/​www/​joomla/​installation</code>
-  *Serveur : localhost +
-  *Nom d'​utilisateur : root +
-  *Mot de passe : Le mot de passe d'​accès à mysql, celui que vous avez choisi lorsque vous avez installé mysql et qui n'est pas forcément votre mot de passe root d'​ordinateur. +
-  *Nom de la base de données : Le nom de la base de données qui va être crée par Joomla ( FIXME : je pense qu'il faut éviter les caractères spéciaux) +
-    +
- +
-Ensuite vérifiez que tout est correct et cliquez sur Suivant. Si une fenêtre de confirmation s'​ouvre,​ cliquez sur OK. +
- +
-Si vous êtes bloqué, pensez à redémarrer les services de Apache2 via la [[commande_shell|commande]] suivante : +
- +
-  sudo /​etc/​init.d/​apache2 restart +
- +
-==== Etape 5 ==== +
- +
-{{ :​Etape5.png?​500 }} +
- +
-Configuration FTP vous n'en avez pas besoin ( pour l'​instant ), cliquez sur suivant. +
- +
-==== Etape 6 ==== +
- +
-{{ :​Etape6.png?​500 }} +
- +
-**Configuration générale :** +
- +
-Nom du Site : Laissez donc libre cours à votre imagination ! +
- +
-Votre e-mail : Renseignez l'​e-mail de l'​administrateur du site +
- +
-Mot de passe de l'​admin : Le mot de passe que vous souhaitez utiliser pour accéder à l'​interface d'​administration de Joomla. **Le nom du super administrateur sera "​admin"​**,​ on ne peut pas le changer pendant l'​installation. Pour des raisons ​de sécurité,​** il sera important de le changer par la suite via l'interface administration. +
-** +
-Installer les données d'​exemple ​Les données d'​exemple sont des menus, des sections, des rubriques et des articles installables en une seule fois et qui vous permettrons de mieux comprendre le fonctionnement de ce CMS. Il est conseillé de les installer pour les débutants. Pour les installer cliquez sur le bouton Installer les données d'​exemple. Ceci fait devrait apparaitre sur ledit bouton Données d'​exemple installées. +
- +
-Charger le script de migration : Ne cocher que si vous êtes un utilisateur averti Ne pas cocher les éventuelles autres cases disponibles. Puis cliquez sur Suivant. +
- +
-==== Etape 7 ==== +
- +
-{{ :Etape 7.png?500 }} +
- +
-Vous êtes normalement arrivé au bout de l'​installation. Un message vous indique le bon déroulement de cette installation et qu'​avant d'​aller plus loin vous devez supprimer le répertoire Installation via la [[commande_shell]] suivante : +
- +
-  sudo rm -/var/www/site-joomla/​installation +
- +
-(remplacez "​site-joomla"​ par le nom du répertoire de votre site) +
- +
-Revenez sur http://​localhost/​site-joomla/,​ vous devriez arriver sur la page d'​accueil de votre site d'​exemple Joomla. L'​installation de Joomla est ainsi terminée. +
- +
-Pour accéder à la partie administration du allez à : http://​localhost/​site-joomla/​administrator/​ +
-(remplacez site-joomla par le nom du répertoire de votre site). +
- +
-Dans la case identifiant,​ mettez "​admin",​ et comme mot de passe mettez celui que vous avez choisi étape 6.+
  
 +Votre site est désormais installé et accessible à l'​adresse [[http://​joomla.localhost]]. Son administration est accessible à l'​adresse [[http://​joomla.localhost/​administrator/​]].
  
 ===== Configuration ===== ===== Configuration =====
Ligne 146: Ligne 104:
 ==== Comment activer la réécriture des URLs ==== ==== Comment activer la réécriture des URLs ====
  
-Allez sur votre site, dans Joomla!, allez dans l'​administration,​ puis dans le menu site choisir ​//configuration générale//, onglet ​//site//, mettre //​oui// ​à //URLs explicites ​(SEF)// et //Utiliser le module Apachemod_rewrite (réécriture ​au "vol" des URLs)//. Sauvez. +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//.
- +
-Ensuite, il faut activer le module //rewrite// de apache2 avec la commande : +
- +
-  a2enmod rewrite +
- +
-Modifier le fichier /​etc/​apache2/​sites-available/​default. Attention, si vous avez des virtual hosts, ne pas modifier //default// mais le fichier correspondant au virtual host de joomla!. +
- +
-  sudo nano /​etc/​apache2/​sites-available/​default +
- +
-Remplacez //​AllowOverride None// par //​AllowOverride All// +
-Demandez gentiment à apache de prendre en considération vos nouvelles exigences =): +
- +
-  sudo /​etc/​init.d/​apache2 restart +
- +
- +
-=== Cas sans virtual hosts === +
- +
-Ensuite, on va supposer que le site est hébergé dans /var/www/ et Joomla! dans un sous répertoire //site//. À la racine de Joomla!, c'est à dire dans /​var/​www/​site/,​ renommez le fichier htaccess.txt en .htaccess puis modifiez-le : +
- +
-  nano /​var/​www/​site/​.htaccess +
- +
-Remplacer  +
- +
-  # RewriteBase / +
- +
-par +
- +
-  RewriteBase /site +
- +
-Si votre site est à la racine, il faut tout de même penser à enlever le #. +
- +
-=== Cas avec virtual hosts === +
- +
-Si vous avez des virtual hosts, reprenez la même procédure en faisant attention en modifiant le fichier ​//.htaccess//. Dans ce cas, à l'​option RewriteBase,​ il ne faut plus mettre le répertoire à partir de /var/www/ mais à partir de la racine du virtual host. +
- +
- +
- +
-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 nouveau URLs de la forme /​catégorie/​id-article +
- +
-=====Utilisation=====+
  
-Voir [[http://aide.joomla.fr/Documentation.html|cette documentation]]+Activez le module ​[[:apache2#​mod_rewrite]] : 
 +<​code>​sudo a2enmod rewrite</code> 
 +Puis renommez le fichier ''​htaccess.txt''​ : 
 +<​code>​mv /var/www/joomla/htaccess.txt /​var/​www/​joomla/.htaccess</​code>​
  
-===== Désinstallation ===== +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''​.
-Il suffit de supprimer ​d'une part le répertoire contenant le site et d'autre part la base de donnée ( via[[phpmyadmin| phpmyadmin]]).+
  
-===== Problème connu =====+===== Utilisation ​=====
  
-Si après l'​installation de Joomla! ou suite à une mise à jour de celui-ci vous avez un problème avec la création d'​articles ou l'​éditeur de message, ​[[:tutoriel:​comment_modifier_un_fichier|éditer le fichier]] ''​libraries/joomla/html/editor.php''​ en remplaçant+Voir [[https://docs.joomla.org/Main_Page/fr|cette documentation]].
  
-  // Try to authenticate -- only add to array if authentication is successful +===== Mises à jour =====
- $resultTest ​$plugin->​onDisplay($editor);​ +
- if ($resultTest) $result[] ​ ​$resultTest;​+
  
-par +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 : 
- // Try to authenticate +<​code>​chmod -R g+w /var/www/​joomla</​code>​ 
- if (method_exists($plugin, ​'onDisplay')) { +On effectue ensuite la mise à jour via l'interface d'administration de Joomla! : [[http://​joomla.localhost/​administrator/​]].
- $result[] = $plugin->​onDisplay($editor);​ +
- }+
  
 +Puis on rétablit les permissions sécurisées :
 +<​code>​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</​code>​
  
  
 ===== Voir aussi ===== ===== Voir aussi =====
  
-  * (fr) [[http://​joomla.fr/​|Site officiel]] +  * (fr) [[https://​joomla.fr/​|Site officiel]] 
-  * (fr) Discussion ​[[http://forum.ubuntu-fr.org/viewtopic.php?​pid=3600842#​p3600842|Installation de Joomla]] sur le forum ubuntu-fr +  * (fr) [[https://kinsta.com/fr/blog/joomla-vs-wordpress/|comparaison ​avec WordPress]]
-  * (fr) [[tutoriel:​lamp_repertoires_de_travail|Travailler sur un autre répertoire que /var/www]] +
-  * (en) [[http://​forum.joomla.org/viewtopic.php?​p=1459968&​sid=42aadce16b662a88b47b204506cbcf4a#​p1459968|Problème ​avec l'​éditeur html]]+
  
 ---- ----
-//​Contributeurs : [[:​utilisateurs:​clement.analogue]] //+//​Contributeurs : [[:​utilisateurs:​clement.analogue]], Coakette, [[:​utilisateurs:​krodelabestiole]],​ hyppocampedecourse//
  • joomla.1294513734.txt.gz
  • Dernière modification: Le 18/04/2011, 14:53
  • (modification externe)