Mediawiki
Introduction
Mediawiki est un logiciel permettant de réaliser des sites Internet de type wiki. Il s'agit d'un système de gestion de contenu qui rend les pages Web librement et également modifiables par tous les visiteurs autorisés. Plus d'informations sont disponibles dans l'article "Mediawiki" sur Edutechwiki anglais
Le logiciel est "open source", c'est à dire que vous pouvez l'utiliser gratuitement, accéder au code et le modifier.
Les exemples de sites utilisant le wiki sont nombreux: le plus connu est très certainement Wikipédia. Nous pouvons également citer ce wiki : EduTech Wiki.
Pour de plus amples informations sur Mediawiki et son développement, consulter la page Mediawiki de Wikipédia, ou le site MediaWiki.
Notez qu'il existe aussi des services ("fermes wiki") comme Wikia qui sont des sites communautaires dans lesquels n'importe qui peut contribuer.
Description et intérêt
Mediawiki est une technologie relativement difficile à utiliser. Par contre, il existe des possibilités techniques avancées comme:
- la mise en page de contenus spécialisés (code informatique par exemple)
- un système de catégories et d'espaces de nommage pour l'organisation de contenus
- la production de livres ("wiki books"), une fonctionnalité récente
- des outils de gestion pour wikis ouverts (changements)
Une autre bonne raison d'utiliser MediaWiki est le fait que sa "survie" est garantie, car il utilise le moteur de Wikipedia.
Le médiawiki est également un outil approprié pour des projets de contenus. Il en existe pour tous les domaines (produits, manuels, tourisme, éducation, etc.)
- En éducation, les MediaWiki peuvent être utilisés en tant que
- Sites de contenus académiques
- Sites de manuels pédagogiques (open educational resources)
- Sites pédagogiques (les élèves/étudiants écrivent), dans l'optique d'écrire pour apprendre (writing-to-learn)
Installer Mediawiki
Pour télécharger Mediawiki, cliquer sur https://www.mediawiki.org/wiki/Download et télécharger une version stable. La version 1.34.1 est la version stable la plus récente (en date du 16 avril 2020). L'installation n'est pas du tout facile pour un débutant, mais très bien documentée sur le site de MediaWiki, et réalisable avec un peu de discipline et de persévérance.
NOTE : pour installer Mediawiki, il vous faut une architecture LAMP ou WAMP sur votre ordinateur.
Installation en local
Pour installer Mediawiki en local (ie sur votre machine), voici la marche à suivre :
1. Télécharger le logiciel Mediawiki
2. Décompresser deux fois le fichier (pour cela, vous pouvez utiliser 7-zip)
3. Placer le dossier Mediawiki décompressé dans le répertoire du serveur Web que vous avez installé (ex : C:\Wamp\www). Vous pouvez, si vous le souhaitez, renommer le dossier Mediawiki comme par exemple "EdutechWiki" pour ce wiki.
4. Lancer un navigateur (ex : Firefox, Google Chrome ou Internet Explorer).
5. Taper l'adresse suivante : http://localhost/
suivi du nom du dossier dans lequel vous avez mis le wiki (exemple : si vous avez renommé le dossier en "monwiki", cela donnera http://localhost/monwiki
6. Réglage de PhpMyAdmin
Dans PhpMyAdmin,
- créer une base de données nommée wikidb (c'est le nom par défaut proposé par MediaWiki, mais vous pouvez le changer).
- créer un utilisateur avec mot de passe, en cliquant sur Privileges > Add a New User en donnant tous les droits à cet utilisateur (puisque c'est vous !) et en choisissant Local comme Host.
7. Dans la page d'installation
- Après avoir configuré PhpMyAdmin, revenir à la page d'installation et entrer le nom de la base de données, le nom de d'utilisateur et le mot de passe créés dans PhpMyAdmin.
8. Lancer l'installation en cliquant sur Install et suivre les indications données à l'écran.
9. Une fois terminé :
- Cliquer sur le lien qui s'affiche en bas à droite ;
- Déplacer le fichier
LocalSettings.php
qui se trouve dans le dossier mediawiki-X.X/Config vers le dossier supérieur : mediawiki-X.X (si vous n'avez pas renommé vos dossiers sinon le nom du dossier supérieur est celui que vous avez choisi) - Revenir au navigateur et cliquer sur OK dans la barre de navigation : le wiki apparaît.
Installation chez un hébergeur
Pour installer Mediawiki sur un serveur, télécharger le fichier médiawiki et le décompresser (cf. étape 1 et 2 du paragraphe précédent):
- soit en local, en utilisant un client FTP comme FileZilla (logiciel Open Source, Windows, OSX et Linux) ou Cyberduck (OSX) pour copier le dossier sur le serveur
- soit directement sur le serveur
Le reste des étapes sont les mêmes que pour l'installation en local.
Configurer Mediawiki
La configuration que nous allons présenter ici concerne trois dimensions :
- La configuration des droits d'accès utilisateurs (ie ce qu'ils peuvent ou non faire sur le wiki)
- La configuration des images (qui sera nécessaire pour le point de configuration ci-dessoussuivant)
- La configuration de l'apparence générale de votre wiki pour l'adapter à votre projet.
Nous présentons ici les configurations de base de Médiawiki; d'autres configurations existent.
Configuration utilisateurs
Mediawiki est un système basé sur des permissions. Cela signifie que vous pouvez autoriser les utilisateurs a effectuer ou non certaines actions.
- NOTE : dans les paramètres par défaut, toute personne qui accède à votre wiki a l'autorisation de modifier les pages (excepté certaines pages protégées par le logiciel).
La configuration de base de l'accès se fait par la modification du fichier LocalSettings.php
(fichier qui figure dans la racine du dossier Mediawiki). Ouvrez ce fichier avec un éditeur (brackets, notePad++ par exemple).
Vous pouvez configurer les droits de deux manières :
Déterminer qui peut visualiser votre wiki
Si vous souhaitez interdire la visualisation de votre wiki (sauf page d'Accueil et d'inscription) aux personnes non enregistrées, vous devez éditer le LocalSettings.php
et ajouter les lignes suivantes :
# Pages que les utilisateurs non enregistrés peuvent voir $wgWhitelistRead = array( "Accueil", "Special:Userlogin" ); $wgGroupPermissions['*']['read'] = false;
Ces lignes signifient que les utilisateurs peuvent lire la page "accueil" et "login" (1re ligne) mais ne peuvent lire les autres pages du wiki (2e ligne).
Déterminer qui peut éditer votre wiki
Pour déterminer qui peut éditer votre wiki, c'est le même principe que pour la visualisation. Ainsi, si vous souhaitez que seul les utilisateurs enregistrés peuvent éditer votre wiki, éditez le fichier LocalSettings.php
et ajouter les lignes suivantes :
# Qui peut éditer : false signifie que seuls les utilisateurs enregistrés peuvent éditer. $wgGroupPermissions['*']['edit'] = false;
Cette ligne de code signifie tout simplement qu'un utilisateur lambda ne peut éditer votre wiki, il doit être enregistré.
Configurations avancées
Ci-dessus, nous avons présenté les configurations de base et pour l'ensemble des utilisateurs. A noter que vous pouvez créer des groupes d'utilisateurs différents et donc leur accorder des droits différents. Des configurations avancées sont donc tout à fait possible dans Mediawiki.
Si cela vous intéresse, consultez les pages suivantes (en anglais):
Configuration des images
Par défaut, Mediawiki n'est pas configuré pour d'importer et de redimensionner des images. Il est nécessaire de changer la configuration pour rendre cela possible.
Ouvrez le fichier LocalSettings.php
qui se trouve à la racine de de votre dossier wiki et cherchez les lignes suivantes :
## To enable image uploads, make sure the 'images' directory ## is writable, then set this to true: $wgEnableUploads = false; $wgUseImageResize = false; # $wgUseImageMagick = true; # $wgImageMagickConvertCommand = "/usr/bin/convert";
Une fois que vous avez trouvé ces lignes, remplacez les false par des true
Vous obtenez :
## To enable image uploads, make sure the 'images' directory ## is writable, then set this to true: $wgEnableUploads = true; $wgUseImageResize = true; # $wgUseImageMagick = true; # $wgImageMagickConvertCommand = "/usr/bin/convert";
A l'issue de cette manipulation, vous devriez avoir une fonctionnalité supplémentaire dans la page d'accueil sous le nom de "importer des fichiers"
Configuration d'apparence
Configurer l'apparence de votre wiki vous permet de le personnaliser et l'adapter à votre projet. Dans cette section, nous allons présenter les principales configurations d'apparences (il en existe d'autres).
Changer la 'skin' de Mediawiki
Pour personnaliser votre wiki, vous avez la possibilité de changer sa 'skin', son apparence.
Par défaut, le style est monobook (image ci-dessous)
Avertissement : sur Internet, vous pouvez trouver beaucoup de skin mais finalement peu fonctionne.
Si vous souhaitez trouver une skin, privilégiez déjà les versions stable (nous n'avons pas trouvé pour le moment un site qui référence les skins qui fonctionnent : à creuser).
Une liste de Skin est disponible à l'adresse suivante Category:All_skins
Changer le logo
Pour changer le logo du wiki afin de le personnaliser, suivre la procédure suivante :
- Choisissez votre logo et placez-le dans le répertoire
skin/common/images
- Editer le fichier LocalSettings.php et cherchez la ligne
$wgLogo = "$wgStylePath/skins/common/images/wiki.png";
- Remplacer maintenant wiki.png par le nom de votre image.
NOTES : le logo Mediawiki mesure par défaut 135X135 pixels.
D'autres options de configurations d'apparence existe, pour aller plus loin, consulter la page (entre autres) personnaliser l'interface
Sécuriser Mediawiki
Les types d'attaques
MediaWiki peut être attaqué et vandalisé de différentes façons:
- Attaques "d'inondation" (Bot flood attacks): un vandal peut utiliser des bot (robots) pour rapidement éditer, déplacer et créer une grande quantité de pages, ou ajouter des images irrespectueuses. Ce type d'attaque est le plus fréquent, est a pour but de "spammer" le wiki.
- Mauvais pseudos (Bad user names): les noms d'utilisateurs peuvent être modifiés et renommé en utilisant l'extension Rename User. Il est préférable de toujours renommer l'utilisateur avant de faire d'autres actions, comme le bloquer, pour que les changements effectuées soit aussi clairs et "propres" que possible.
- Suppression de contenus (partiel ou complet)
- Vandalisme de modèles (Template vandalism): un vandal peut éditer des modèles (templates) fréquemment utilisés par les utilisateurs, afin d'affecter toutes les pages utilisant ce modèle. Pour lutter contre ce type d'attaque, il faut protéger les modèles (templates) les plus utilisés (dans ce wiki, vous pouvez les trouver dans la page spéciale Special:MostLinkedTemplates).
Dégradation / Hacking
La première chose à faire est de déterminer si le fonctionnement de votre MediaWiki est compromis ("hacked"). Pour cela, naviguez dans différents pages du sites pour vérifier si la dégradation est présente sur l'ensemble du site ou non. Si c'est le cas, il est possible qu'un modèle ou que la notice du site (sitenotice) aient été vandalisés.
Ouvrez la console de développeur dans votre navigateur (sur chrome pour MacBook: Alt + Cmd + I
), et chercher le HTML. Si celui-ci inclus le contenu de la page, le site n'est pas compromis.
Prévenir les attaques
Pour sécuriser MediaWiki, il existe de nombreuses possibilités d'extensions à installer. Vous trouverez la liste complète sur la page "Combating Vandalism" de MediaWiki.
- Extension:TitleBlacklist: Cette extension permet de blacklister des titres de page et des noms d'utilisateurs indésirés.
- Extension:ConfirmEdit et Extension:QuestyCaptcha: Les codes Captchas permettent de lutter contre le Spam et contre le vandalisme, bien qu'ils ne soient pas appréciés des vrais utilisateurs.
Des modifications du fichier LocalSettings.php peuvent également aider à prévenir le vandalisme, par exemple:
- Ajoutez une valeur positive au paramètre
$wgAccountCreationThrottle
, pour limiter le nombre de comptes créés à partir de la même adresse IP (dans les 24 heures). $wgNamespaceProtection
permet de protéger les modèles (templates): seuls les utilisateurs confirmés pourront les éditer.
Cette section explique comment naviguer dans les différentes pages du MediaWiki. Vous trouverez davantage d'informations dans la page "Aide:Navigation" de MediaWiki.
Pour faciliter la navigation sur le site, chaque page de MediaWiki dispose de trois éléments de navigation:
- La barre latérale de navigation (sidebar) donne accès à des pages définies par l'utilisateur, et considérées comme importantes, comme par exemple les modifications récentes ou l'importation de fichiers.
- Les liens ou onglets présent en haut et relatifs à la page en cours de lecture: la page de discussion associée, l'historique des version et le lien de modification de la page.
- Les liens utilisateur (user-links) présents en haut à droite: un lien pour créer un compte ou se connecter (pour un utilisateur anonyme), ou un lien personnel vers la page utilisateur et les préférences (pour un utilisateur connecté).
Généralement, les pages contiennent également des liens insérées dans le texte.
La barre de navigation présente généralement à gauche de l'écran donne accès aux pages importantes du site, configurés par l'administrateur. Cliquer sur le logo permet de revenir sur la page d'accueil.
La section "Outils" ou "Boîte à outils" (Tools) est adaptée en fonction du type de page consultée (page spéciale ou non-spéciale), et contient différents liens de base:
- "Pages liées" renvoie l'utilisateur à d'autres pages contenant un lien vers la page consultée. Ce lien est visible sur toutes les pages, sauf les pages spéciales.
- "Suivi de pages liées" permet de consulter les modifications récentes faites dans des pages liées à partir de la page actuelle, par exemple des modifications du modèle. Ce lien est visible sur toutes les pages, sauf les pages spéciales.
- "Importer un fichier" renvoie l'utilisateur vers une page spéciale lui permettant d'importer des fichiers sur le Wiki. Ce lien est visible sur toutes les pages, y compris les pages spéciales.
- "Pages spéciales" permet de consulter la liste des pages contenant des informations sur le site et/ou permettant d'accéder aux actions administratives du site. Les différentes pages spéciales peuvent être trouvées sur la page "Help:Pages spéciales" de MediaWiki. Ce lien est visible sur toutes les pages, y compris les pages spéciales.
Afin de modifier la barre de navigation latérale, il faut se rendre sur la page MediaWiki:Sidebar et en modifier le code.
* Titre ** Lien|Sous-titre ** Lien|Sous-titre ** Lien|Sous-titre * navigation ** mainpage|mainpage-description ** Special:Chat|Chat room ** Special:WikiForum|Forum de discussion ** recentchanges-url|recentchanges ** randompage-url|randompage ** helppage|help * SEARCH * TOOLBOX * LANGUAGES
Cela permet de personnaliser son menu, de le rendre plus complet ou au contraire de l'alléger. Selon le skin utilisé et les différentes fonctionnalités appelées, il se peut que certains titres génériques n'apparaissent pas (languages, search...) malgré leur présence sur cette page.
Les onglets de page
Les liens présents en haut de la page sont appelés "Onglets". Ils permettent d'effectuer différentes actions relatives à la page consultée, adaptée au type d'utilisateur (anonyme, connecté, ou administrateur). De base, ces onglets sont:
- "Espace de nom" contient le type de page consulté (page, aide, page spéciale, modèle, page d'utilisateur, etc).
- "Discussion" renvoie l'utilisateur à une page de discussion liée à la page consultée, et permettant de poser des questions ou suggérer des modifications.
- "Modifier" permet de modifier le contenu de la page (si la modification n'est pas autorisée par les utilisateurs anonymes ou si la page est protégée, les utilisateurs verront l'onglet "voir le code source").
- "Historique" liste les modifications apportées à la page.
- "Suivre" (représenté ici par une étoile) permet d'ajouter la page à la liste des suivis. Cet onglet est disponible uniquement pour les utilisateurs connectés.
- "Renommer" (sur ce wiki, cet onglet est inclut dans l'onglet "Plus") permet de modifier le nom de la page. Cet onglet est disponible uniquement pour les utilisateurs connectés.
- "Protéger" permet de modifier les autorisations de modification de la page (et par exemple verrouiller un modèle). Cet onglet est visible uniquement pour les administrateurs.
- "Supprimer" permet de supprimer une page, et est visible uniquement par les administrateurs.
Il est possible d'ajouter ou supprimer des onglets en utilisant JavaScript ou en installant différentes extensions. Pour cela, voir la section "Comment ajouter/supprimer des onglets" dans la FAQ de MediaWiki
Les liens utilisateur
Les liens utilisateurs sont affichés dans le coin supérieur droit de la page, et permettent d'effectuer différentes actions liées à l'utilisateur.
Les utilisateurs anonymes verront un lien leur permettant de se connecter ou de s'identifier, ou un lien vers son adresse IP ainsi que la page de discussion de cette adresse si l'administrateur a activé cette option.
Les utilisateurs connectés auront à leur disposition divers liens:
- "Nom d'utilisateur" (UserName): ce lien renvoie à votre page utilisateur, que vous pourrez modifier à votre guise.
- "Discussion": ce lien renvoie à la page de Discussion relative à votre page utilisateur.
- "Préférences": ce lien permet de modifier différents paramètres pour votre navigation.
- "Liste de suivi": ce lien renvoie à une liste des pages suivies (ajoutée en cliquant sur l'onglet "suivre" ou la petite étoile).
- "Contributions": ce lien permet de consulter vos contributions au site.
- "Se déconnecter".
Editer Mediawiki
Cet article est une ébauche à compléter. Une ébauche est une entrée ayant un contenu (très) maigre et qui a donc besoin d'un auteur.
Principales règles d'édition
Voir entre autre Editer une page + ajouter règles de syntaxe principales
- Aide à l'édition
- Voir l'aide de ce wiki ou le manuel détaillé sur Mediawiki.org
Modèles
Les modèles sont une aide à l'édition pour les utilisateurs du Mediawiki et permettent une homogénéisation des pages. Ils permettent également un ajout facile de langage spécifique à un Mediawiki comme l'appartenance à une catégorie. Ils sont créés comme une page, avec la mention "Modèle:" avant le nom du modèle.
- <includeonly>Ce texte apparaît sur la page qui fait appel au modèle mais pas sur le modèle</includeonly>
Cette balise figure sur la page Modèle et permet d'insérer un contenu à une page qui fait appel au modèle mais que le modèle en question ne contienne pas ce contenu. Ceci est notamment utile pour rajouter de multiples catégories à une page.
- <noinclude>Ce texte apparaît dans le modèle uniquement</noinclude>
Cette balise figure sur la page Modèle et permet d'insérer un contenu visible sur cette page uniquement. Il n'apparaîtra pas sur les pages qui font appel à ce modèle.
- {{Nom_du_modèle}}
Cette balise figure sur la page qui fait appel au modèle en question. Elle applique le code contenu dans le modèle. Ce code n'est ni modifiable ni lisible par l'utilisateur. Elle est notamment utilisée pour faire appel à des mentions génériques comme "en construction" ou "ébauche".
- {{subst:Nom_du_modèle}}
Cette balise figure sur la page qui fait appel au modèle en question. Elle applique le code contenu dans le modèle. Une fois la page enregistrée, l'utilisateur peut voir et modifier ce code dans sa page. Elle est notamment utilisée pour faire appel à une ossature type d'une catégorie de pages.
Extensions
Cet article est une ébauche à compléter. Une ébauche est une entrée ayant un contenu (très) maigre et qui a donc besoin d'un auteur.
Voir entre autres extensions
Magic Words ("Extensions par défaut")
Lors de l'installation du MediaWiki, une extension s'installera par défaut. Il s'agit des Magic Words. Il ne s'agit pas d'une extension à proprement parler mais plutôt d'une fonctionnalité de MediaWiki. Ils se trouvent sous cette section car il est opportun de chercher si un Magic Word existe avant de se lancer dans la recherche d'une extension pour une même fonctionnalité. Ils permettent entre autres d'afficher le nombre de pages contenues dans le wiki, le nombre de vues d'une page, etc.
Installer une extension
Pour installer une extension, il faut généralement suivre les directives présentes sur la page de l'extension et placer l'extension dans le dossier */extension
.
Les extensions stables se trouvent sur la page Stable extensions (en anglais) du site de MediaWiki. Elles sont parfois traduites en français, mais la liste pour les extensions en anglais est bien plus longue.
Il faut rajouter une mention de l'existence de l'extension dans le fichier LocalSettings.php, comme indiqué sur les pages explicatives des extensions. Un exemple d'installation est disponible sur la page Formulaire sémantique
Extensions intéressantes
Permet d'insérer un Flux RSS sur une page wiki. Afin de sécuriser le wiki, il est préférable d'ajouter les flux rss autorisés au fur et à mesure de leur utilisation dans le fichier rss.php plutôt que d'accepter l'insertion de n'importe quel Flux RSS
Permet l'utilisation de fonctions poussées, notamment pour la génération de l'aléatoire.
Permet l'insertion de vidéos en provenance de sites de streaming tels que YouTube ou DailyMotion sur le wiki.
Permet l'insertion d'un forum au sein du wiki.
Formulaire mediawiki
Cette partie vise à installer et à mettre en place l'utilisation de formulaire wiki. Afin de ne pas surcharger cette page, nous avons préféré créer une page propre à cette thématique. Formulaire sémantique
Maintenance Mediawiki
Cet article est une ébauche à compléter. Une ébauche est une entrée ayant un contenu (très) maigre et qui a donc besoin d'un auteur.
Les scripts de maintenance sont programmés en PHP et rangés dans le dossier */maintenance
. Ces scripts permettent de réaliser différentes tâches administratives, des importations de documents, de la maintenance de site, des extractions de rapport, et des mises à jour du site.
Updater Mediawiki
Cet article est une ébauche à compléter. Une ébauche est une entrée ayant un contenu (très) maigre et qui a donc besoin d'un auteur.
voir Upgrading
Backup de Mediawiki
Cet article est une ébauche à compléter. Une ébauche est une entrée ayant un contenu (très) maigre et qui a donc besoin d'un auteur.
Réaliser un backup de votre wiki Voir backup
Exemples d'applications et d'utilisation
TECFA maintient environ 5 Mediawikis, dont le plus connu est http://edutechwiki.unige.ch/en (la version Anglaise de ce wiki).
Liens et bibliographie
- MediaWiki.org. Site officiel de support.
- Sites using MediaWiki