Wiki

De Documentation
Version datée du 22 avril 2025 à 16:40 par Domi (discussion | contributions) (Page créée avec « ************************************* * wiki (mediawiki) sur alpine léger * ************************************* 1. Installation du conteneur # lxc launch local:alpineLe wiki # lxc shell wiki # apk update && apk upgrade 2. Installation du serveur web : apache2 - php83 et extensions nécessaires # apk add apache2 php83 php83-apache2 apache2-ctl php83-intl php83-mbstring php83-bcmath php83-apcu php83-curl icu-data-full php83-cli php83-mysqli # apk add im... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à la navigationAller à la recherche
  • wiki (mediawiki) sur alpine léger *

1. Installation du conteneur

# lxc launch local:alpineLe wiki # lxc shell wiki # apk update && apk upgrade

2. Installation du serveur web : apache2 - php83 et extensions nécessaires

# apk add apache2 php83 php83-apache2 apache2-ctl php83-intl php83-mbstring php83-bcmath php83-apcu php83-curl icu-data-full php83-cli php83-mysqli # apk add imagemagick (pour être sûr, ...-jpeg, -svg, -pdf, -tiff # apk add php83-xml php83-ctype php83-fileinfo php83-iconv (sinon ça râle à l'installation...) # apk add php83-session php83-dom

A ajouter après l'installation de mediawiki, dans LocalSettings.php : $wgUseImageMagick = true ; $wgImageMagickConvertCommand = '/usr/bin/convert'; # pour Linux

3. Installation de mediawiki

Téléchargement de l'image dans /tmp/ # cd /tmp # wget https://releases.wikimedia.org/mediawiki/1.43/mediawiki-1.43.1.tar.gz

Décompression dans le dossier racine : # tar -xvzf /tmp/mediawiki-1.43.1.tar.gz -C /var/www/localhost/htdocs/

Supprimer le ficier index.html d'origine (on n'en aura pas besoin...) # rm /var/www/localhost/htdocs/index.html

Mettre le contenu du dossier mediawiki à la racine et supprimer le dossier : # mv /var/www/localhost/htdocs/mediawiki-1.43.1/* /var/www/localhost/htdocs/ # rm -R /var/www/localhots/htdocs/mediawiki-1.43.1


Sur le conteneur mariadb, à partir du conteneur phpma, créer un utilisateur (wiki + mdp) et une base de données (wiki)

Configurer php : /etc/php83/php.ini

upload_max_filesize = 20M (minimum... peut être augmenté en cas de téléchargement de fichier plus gros) memory_limit = 128M (ou plus...)

Ajouter apache au démarrage automatique : # rc-update add apache2

Démarrer apache (!) # rc-service apache2 start

Indiquer à mediawiki où se trouve la base de données

4. Configuration À ce stade, on peut tranquilement se rendre sur la page du wiki à l'adresse wiki.lesitadom.fr (si le proxy veut bien, que le certificat a été mis à jour et que le sous-domaine est enregistré correctement...)

Sauvegarder le fichier LocalSettings.php puis le transférer sur raspberry (régler les droits si nécessaire...) Le copier dans le conteneur wiki à la racine du site puis entrer dans le conteneur : # lxc file push /tmp/wiki/LocalSettings.php wiki/tmp/ # lxc shell wiki

Déplacer le fichier à la racine du site et régler les droits : # mv /tmp/LocalSettings.php /var/www/localhost/htdocs/ # chown root:www-data /var/www/localhost/htdocs/Localsettings.php

5. Transfert de l'ancien wiki Sur l'ancien wiki, utiliser l'outil dumpbackup.php pour extraire les pages et les fichiers téléversés : Se placer dans le dossier 'racine du site'/maintenance/ et lancer la commande : # php dumpBackup.php --full --include-files --uploads > /tmp/transfert_wiki.xml

Transférer le fichier sur le serveur (filezip), puis dans le conteneur wiki (push)

Sur le nouveau wiki, donner les droits d'écriture sur le dossier /tmp :

# chmod 777 /tmp

se placer dans le dossier "chemin du wiki"/maintenance et lancer la commande : # php importDump.php --conf ../LocalSettings.php /tmp/transfert_wiki.xml --username-prefix="" (Reste figé un moment... patience !)

Message de sortie :

100 (0.81 pages/sec 2.62 revs/sec) Done! You might want to run rebuildrecentchanges.php to regenerate RecentChanges, and initSiteStats.php to update page and revision counts

Sur l'ancien wiki, utiliser mysqldump pour sauvegarder la balse de données et transférer le fichier dans le conteneur mariadb Sur mariadb : # mysqldump -u wiki -p --default-character-set=utf8mb4 wiki < /tmp/transfert_wiki.sql

(les changements ne sont pas visibles sur le site)

Sur wiki (dans /var/www/localhost/htdocs/maintenance) # php rebuildrecentchanges.php

Les pages sont là, mais pas la page d'accueil...

Vérifier les extension : voir https://wiki.lesitadom.fr/extensions/README

Différences : LocalisationUpdate, Renameuser

                                • trop le bordel !

compression du dossier complet sur le serveur d'origine, transfert vers le conteneur wiki # tar -czf /tmp/transfert_mediawiki.tar.gz /var/www/html/mediawiki

Décompression : # tar -xzf /tmp/transfert_mediawiki.tar.gz -C /var/www/localhost/htdocs/

Placer le fourbi à la racine : # mv ...patata/mediawiki/* /var/www/localhost/htdocs/

	Sauvegarde de LocalSettings.php -> LocalSettings.old

Copie de LocalSettings.php d'origine

Règlage des droits d'après le serveur d'origine : # chown -R root:root /var/www/localhost/htdocs/* # chown -R root:www-data /var/www/localhost/htdocs/image

Cette méthode ne fonctionne pas : pas la même version de la bdd, php,...

on reprend l'instal...

Pour transférer les images : Sur le serveur d'origine : # tar -czvf /tmp/transfert_images_wiki.tar.gz /var/www/html/mediawiki/images

Copier le fichier sur le serveur cible, puis le copier dans le conteneur.

Sur le conteneur, décompresser le fichier dans un dossier temporaire

Utiliser le script de maintenance pour les importer dans le wiki wiki:/var/www/localhost/htdocs/maintenance# php run importImages /tmp/images --search-recursively

ImageMagick ne fonctionne pas (création de vignettes). Il ne parvient pas à écrire dans le "dossier temporaire". -> Désactivation dans le fichier LocalSettings.php (UseImageMagick = false). GD prend automatiquement le relais.

Il manque des images : celles contenant un espace dans le nom n'ont pas été importées. D'autres manquent, elles ont apparemment étées stockées ailleurs sur le serveur. Utiliser "pages avec des liens brisés".

Reste à voir pour la page d'accueil : les modèles ne fonctionnent pas... Si ! Copie/collage de la page d'un site à l'autre en mode modification.

Lors de la seconde procédure, la base de données était peuplée lors de l'installation et le mécanisme de mise à jour s'est bien déroulé. il faut peut-être commencer par là (transfert de la base de donnée puis installation et récupération des données).