Configurer Mediawiki

De Documentation Optéos
Aller à :navigation, rechercher

Se connecter en ssh au serveur[modifier | modifier le wikicode]

ssh nomutilisateur@nomduserveur

Créer base de donnée[modifier | modifier le wikicode]

sudo su
mysql
CREATE DATABASE mediawiki_nomdunouveauwiki;
GRANT ALL PRIVILEGES ON mediawiki_nomdunouveauwiki.* TO 'nomutilisateur'@'localhost' IDENTIFIED BY 'motdepasseidentifiant';
exit
exit

(pour quitter le root )

Copier en renommant l'extension Dokit d'un des wiki.[modifier | modifier le wikicode]

cd /extensions 
cp -R Dokit... Dokitnomdunouveausite

Créer un dossier image dédié[modifier | modifier le wikicode]

cd images
mkdir nomdunouveausite

Créer un nouveau Local Settings dédié[modifier | modifier le wikicode]

Dans le dossier du wiki, copier et coller un fichier local_settings_nomdewiki existant puis modifier les éléments.

Attention de bien renommer le nom de la base de donnée

cp LocalSettings_nomdewiki.php LocalSettings_nomdunouveauwiki.php
vim LocalSettings_nomdunouveauwiki.php

Ne pas oublier de configurer le dossier images :

$wgUploadDirectory = "$IP/images/nomdunouveausite";  

$wgUploadPath = "/images/nomdunouveausite";

Et rajoutez des caractères à la clé pour éviter tout risque de confondre un autre wiki au moment de la mise à jour : $wgUpgradeKey 

Configurer le fichier Local settings racine, qui sera d'aiguillage[modifier | modifier le wikicode]

Ajouter :

case "nomdedomaineduwiki':
require_once 'LocalSettings_nomduwiki.php';
break;  

Activer nginx[modifier | modifier le wikicode]

cd /etc/nginx/sites-enabled/

Modifier le fichier de configuration wiki :

sudo vim mediawiki.... 

Ajouter le nom de domaine à la fin de la liste des noms de domaine (et avant le ;)

server_name ...... nomdedomainedunouveausite ;

Ajouter en fin de document la configuration wiki du nginx (modifier les élements comme décrit ci dessous)

server {
  listen [::]:443 ssl;
  listen 443 ssl;
  server_name nomdedomainedunouveausite;

  root /home/fuzzy/mediawiki/www;
  index index.php;

  access_log /var/log/nginx/nomdunouveausite/nomdunouveausite.access.log;
  error_log  /var/log/nginx/nomdunouveausite/nomdunouveausite.error.log;

  ssl_certificate     /etc/letsencrypt/live/nomdedomainedunouveausite/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/nomdedomainedunouveausite/privkey.pem;

  include drop.conf;
  charset utf-8;

  include snippets/letsencrypt.conf;

  client_max_body_size 5m;
  client_body_timeout 60;

  include snippets/mediawiki/mediawiki.conf;

  # Handle PHP with PHP-FPM
  location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php5-fpm.www-fuzzy.sock;
  }
}

Créer les dossiers

sudo mkdir /var/log/nginx/nomdunouveausite

Créer le https qui créera le dossier

sudo certbot certonly --agree-tos --email admin@ficusnode.com --webroot -w /etc/letsencrypt/public -d nomdedomainedunouveausite

Faire un restart de nginx

sudo /etc/init.d/nginx restart

Mettre à jour l'éditeur visuel (parsoid)[modifier | modifier le wikicode]

Sur le serveur où est l'éditeur visuel :

sudo vim /etc/mediawiki/parsoid/settings.js
sudo service parsoid restart

Installer le wiki[modifier | modifier le wikicode]

Récupérer le code $wgUpgradeKey

https://nomdunouveauwiki/mw-config/index.php?page=Install

Mettre à jour le wiki[modifier | modifier le wikicode]

php maintenance/update.php --conf LocalSettings_nomduwiki.php  --skip-external-dependencies

Configuration du fichier de configuration partagé[modifier | modifier le wikicode]

--> LocalSettings_configurationwiki.php

Mettre éditeur visuel[modifier | modifier le wikicode]

Régler l'éditeur visuel par défaut /wiki/MediaWiki:Noarticletext

$wgDefaultUserOptions['visualeditor-enable'] = 1;

$wgHooks['HtmlPageLinkRendererBegin'][] = function ( $linkRenderer, $target, &$text, &$extraAttribs, &$query, &$ret ) {

        $title = Title::newFromLinkTarget( $target );

        if ( !$title->isKnown() ) {

                $query['veaction'] = 'edit';

                $query['action'] = 'view'; // Prevent MediaWiki from overriding veaction

        }

};

Migration d'un wiki[modifier | modifier le wikicode]

Exporter la base de donnée :[modifier | modifier le wikicode]

Avec phpmyadmin.

Ou :

mysqldump --default-character-set=binary --user=wikidb_user --password=wikidb_userpassword wikidb > dump_of_wikidb.sql

Importer une base de donnée :[modifier | modifier le wikicode]

Après avoir crée la base de donnée comme indiqué ci dessus, appliquer cette commande :

mysql -u wikidb_user -p wikidb < dump_of_wikidb.sql

Exporter les fichiers images et importer dans le nouveau dossier

Configuration Dokit[modifier | modifier le wikicode]

Edition de Localsettings.php

Exemple pour wikifab :

https://github.com/Wikifab/wikifab-main/blob/master/LocalSettings.wikifab.php

Wfexplore[modifier | modifier le wikicode]

$wfexploreDynamicsFilters


Migration de wiki[modifier | modifier le wikicode]

  • Copier coller le dossier images
  • Copier/coller le fichier localsettings
  • Passer le script de migration :

Exemple : php maintenance/update.php --conf LocalSettings_wikifaireecole.php --skip-external-dependencies