Mediawiki

De EduTech Wiki
Aller à la navigation Aller à la recherche

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)

Style Monobook Mediawiki

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).

Skin Cologne Blue


Une liste de Skin est disponible à l'adresse suivante Category:All_skins

Pour changer le logo du wiki afin de le personnaliser, suivre la procédure suivante :

  1. Choisissez votre logo et placez-le dans le répertoire skin/common/images
  2. Editer le fichier LocalSettings.php et cherchez la ligne
$wgLogo             = "$wgStylePath/skins/common/images/wiki.png";
  1. 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

Consultez des recommendations générales pour la sécurité de votre MediaWiki sur la page "Manuel:Sécurité" de MediaWiki
Pour plus d'information sur le vandalisme, voir la page "Combating Vandalism" sur 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.
Voir "Combating Vandalism" sur MediaWiki
  • 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.

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.

Naviguer dans Mediawiki

Éléments de navigation dans MediaWiki

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 latérale de navigation

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.

Modifier la barre de navigation

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

Onglets de navigation

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".
Liens utilisateurs

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

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 rapports, et des mises à jour du site.

Il existe des dizaines de scripts, disponibles sur la page Scripts de maintenance de MediaWiki. Avant d'utiliser un script, il est vivement conseillé de consulter la documentation associée.

Configuration

Dans le fichier LocalSettings.php, vous devez insérer les variables de configuration suivantes: $wgDBadminuser et $wgDBadminpassword. Ces variables permettent d'exécuter les scripts de maintenance modifiant la structure de la base de données comme le script Manuel:Update.php (qui permet de vérifier si une mise à jour de la base de données de MediaWiki est nécessaire), si l'utilisateur configuré dans $wgDBuser n'a pas les droits nécessaires. Les valeurs de ces deux variables sont donc déterminées par le moteur de base de données utilisé pour MediaWiki.

Exécuter les scripts de maintenance

Après avoir configuré le fichier LocalSettings.php, les scripts de maintenance devront être lancés à partir de la ligne de commande. Les utilisateurs n'ayant pas accès directement au serveur depuis le terminal devront établir une connexion SSH (Secure Shell). Pour les utilisateurs Windows, il conviendra d'utiliser une application cliente SSH telle que PuTTY, ou tout autre émulateur de terminal.

La marche à suivre est disponible sur MediaWiki.org

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).

Une liste des MediaWiki peut être trouvée sur le site de MediaWiki.

Liens et bibliographie