Mediawiki
Installation
Pour commencer l'installation du MediaWiki, votre base de paquets doit être a jour
Serveur Apache
Pour installer le serveur apache, rentré cette commande en tant que root sur la machine qui va héberger le site
Pour vérifier qu'apache fonctionne bien tapez
Si aucun message d'erreur n'apparait et qu'en vous rendant à l'adresse localhost apparait la page "it work!" c'est que apache fonctionne correctement.
PHP 5
MediaWiki requiert PHP pour fonctionner. Pour installer PHP, utilisé la commande suivante toujours sur la machine qui va hébergé le wiki
Créez une page test.php qui contient :
<?php phpinfo(); ?>
Appelez-la à travers Apache (http://...), cela devrait vous afficher les informations sur PHP.
PostgreSQL
Consulter la page PostgreSQL
MediaWiki
Maintenant que notre serveur web et notre moteur de BDD sont installé, nous pouvons passer à l'installation du MediaWiki et la configuration des différents composants
Télécharger MediaWiki
Téléchargez MediaWiki depuis la page de téléchargement officielle ou depuis subversion.
Décompressez les fichiers localement ou sur votre serveur web via la commande
Préparer les dossiers
MediaWiki doit être capable d'écrire dans le dossier mw-config quand le script d'installation s'exécute. Si vous ne l'avez pas encore fait, vous devez changer les permissions pour le dossier mw-config pour que le serveur web puisse écrire dedans. Pour cela, utiliser la commande suivante afin de donner les droits en écriture sur le dossier
Tsearch2
La base de données que MediaWiki va utiliser doit avoir tsearch2 installés. Vous avez besoin d'installer tsearch2 pour rechercher le texte de votre wiki. Le module tsearch se trouve dans les sources de PostgreSQL qui ont été téléchargée précedemment.
[root@ordi ~]# ./configure
[root@ordi ~]# make
[root@ordi ~]# make install
PostgreSQL
Nous allons créer une base de données nommée wikidb détenue par un utilisateur nommé wikiuser. Depuis la ligne de commande en tant qu'utilisateur postgres, suivez les étapes suivantes :
createuser -S -D -R -P -E wikiuser (entrez ensuite le mot de passe) createdb -O wikiuser wikidb
Ajouter tsearch à notre base de données :
su postgres psql wikidb -f /usr/local/src/postgresql-9.1.3/contrib/tsearch2/sql/tsearch2.sql
après quoi vous devez donner les droits select à wikiuser pour la table tsearch et insert à locale :
su - postgres psql -d wikidb -c "grant select on pg_ts_config to wikiuser;" psql -d wikidb -c "grant select on pg_ts_config_map to wikiuser;" psql -d wikidb -c "grant select on pg_ts_dict to wikiuser;" psql -d wikidb -c "grant select on pg_ts_parser to wikiuser;"
Configuration
Avec le navigateur web, aller à la page principale du wiki. C'est le dossier accessible via le web dans lequel MediaWiki a été installé et est généralement /wiki (http://IP/wiki). Il va être affiché un message vous disant que le wiki a été installé mais n'a pas encore été configuré et que vous "devez cliquer ici pour configurer le wiki". Cliquez sur le lien pour accéder au script de configuration. Celui-ci se trouve (au cas où vous voudriez y accéder directement) dans le dossier config du répertoire principal du wiki.
- Si le script détecte une erreur de configuration, il ne va pas vous autoriser à continuer.
- Si tous les tests sont passés avec succès, il va être affiché un formulaire à remplir avec les information nécessaires à MediaWiki. Suivez les instructions sur le formulaire et remplissez les champs.
- Cliquez sur le bouton "Install!". Si un paramètre est manquant ou qu'il n'est pas correct, le formulaire sera de nouveau affiché avec un message d'erreur à côté du (des) champ(s) fautif(s). Sinon MediaWiki va créer et remplir toutes les tables et champs nécessaire dans la base de données.
Après que le script a fini, un fichier nommé LocalSettings.php est créé dans le dossier config. Ce fichier contient toutes les informations nécessaires à MediaWiki pour fonctionner correctement.
- Déplacer ce fichier dans le répertoire principal du wiki /var/www/wiki.
- Changer les permissions pour ce fichier pour qu'elles soient plus restrictives
- Supprimez le dossier config.
Une fois que tout ceci a été terminé, votre wiki devrait être prêt à l'emploi. Allez à l'adresse à laquelle vous l'avez installé 192.168.100.39/wiki et commencez à éditer !
Configuration Apache
Afin de pouvoir vous connecter au wiki en pointant sur une adresse du style http://wiki.admin.pass.be, éditer le fichier /etc/apache2/sites-available/default :
<VirtualHost *:80>
ServerName wiki.domain.be
DocumentRoot /srv/www/
RedirectMatch ^/$ /wiki
<Directory /srv/www/wiki/index.php/Accueil>
Options Indexes ExecCGI FollowSymLinks
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
La clause RedirectMatch est nécessaire pour que les clients soient redirigé directement vers la page d'accueil du wiki
Extensions
LDAP
On peux utiliser un serveur LDAP afin de s'authentifier sur le wiki.
Téléchargement
Télécharger l'extension à partir de leur [subversion] et placer l'extension dans le dossier /var/www/wiki/extensions/LDAP
[user@ordi ~]# svn checkout http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/LdapAuthentication/
[user@ordi ~]# chown wiki *
[user@ordi ~]# chgrp www-data *
Activation du plugin
Ajouter ces lignes dans le fichier LocalSettings.php :
#Parametre pour utiliser LDAP $wgAuth = new LdapAuthenticationPlugin(); $wgLDAPDomainNames = array( "Domain" ); $wgLDAPServerNames = array( "Domain"=>"X.X.X.X" ); $wgLDAPUseLocal = false; $wgLDAPEncryptionType = array( "Domain"=>"clear" ); $wgLDAPSearchStrings = array( "Domain"=>"uid=USER-NAME,ou=Users,dc=domain,dc=be" ); $wgLDAPBaseDNs = array( "Domain"=>"dc=domain,dc=be" ); $wgLDAPGroupBaseDNs = array( "Domain"=>"ou=Groups,dc=domain,dc=be" ); $wgLDAPUserBaseDNs = array( "Domain"=>"ou=Users,dc=domain,dc=be" );
Vérification du compte Administrateur
Pour la suite de la configuration, il nous faut vérifier qu'il existe un compte "Administrateur". Pour cela, se connecter à la base de données du Wiki et vérifier le contenu de la table "user_groups"
SELECT * FROM mediawiki.mwuser;
Ensuite il faut ajouter l'ID de l'utilisateur à la table « user_groups » avec le nom du groupe
INSERT INTO mediaWiki.user_groups VALUES('X','bureaucrat');
INSERT INTO mediaWiki.user_groups VALUES('X','sysop');
Remplacer le 'X' des commandes ci-dessus par l'ID de l'utilisateur dont vous désirez qu'il soit Administrateur
PDF Export
On va activer la possibilité d'exporter les pages en PDF.
Installation de htmldoc
Création de l'extension PdfExport
Créer le répertoire de l'extension :
Créer les deux fichiers suivant en copiant le contenu site : [PdfExport] :
nano PdfExport.php nano PdfExport.i18n.php nano PdfExport_body.php nano PdfExport.i18n.alias.php
Activation du module
Ajouter ce qui suit à 'LocalSettings.php' :
require_once("extensions/PdfExport/PdfExport.php");
L'extension est maintenant activée.
Troubleshooting
Problème de cookies
Si le message suivant apparait lorsque l'on désie se connecter au wiki :
Erreur de connexion PASS utilise des cookies pour la connexion mais vous les avez désactivés. Veuillez les activer et vous reconnecter.
Cela peut-être due à un manque de place sur la partition /var du serveur web. Regarder pour soit supprimer des fichiers de logs plus nécessaire ou augmenter la partition.
Procédure
Mise à jour
- Avant toute chose, on pense à réaliser un backup de la base de donnée.
- On se rend dans le répertoire web du serveur et on télécharge la dernière version de MediaWiki
- On copie les fichiers de config,les images,extensions ... vers la nouvelle version
- On renomme l'ancienne version
- On lance le script de maintenance fourni par la nouvelle version
Si tout s'est bien passé, on peut se rendre sur la page web
Il est possible que certaines extensions font apparaitre une page blanche lorsque l'on désire se rendre sur la page du wiki.
- On insère un code PHP dans le fichier LocalSettings.php pour afficher les messages d'erreurs au lieu d'une page blanche
<?php
# This file was automatically generated by the MediaWiki 1.18.1
# installer. If you make manual changes, please keep track in case you
# need to recreate them later.
#
# See includes/DefaultSettings.php for all configurable settings
# and their default values, but don't forget to make changes in _this_
# file, not there.
#
# Further documentation for configuration settings may be found at:
# http://www.mediawiki.org/wiki/Manual:Configuration_settings
########################################################
###################DEBUG################################
########################################################
error_reporting( E_ALL );
ini_set( 'display_errors', 1 );- On met à jour les extensions qui génèrent les erreurs. La marche à suivre est pareil pour tous. Ici, l'exemple est avec Category Tree.
On va chercher la dernière version de l'extension en tapant sur Internet mediawiki Nom Extension
[root@ordi ~]# sudo wget https://extdist.wmflabs.org/dist/extensions/CategoryTree-REL1_25-d107bc6.tar.gz && sudo tar xf CategoryTree-REL1_25-d107bc6.tar.gz
[root@ordi ~]# sudo rm CategoryTree-REL1_25-d107bc6.tar.gz
[root@ordi ~]# sudo chown -R www-data:www-data CategoryTree/
- Répéter l'étape précédente à chaque erreur d'extensions
