« MediaWiki/Migration des données 2 » : différence entre les versions
m (→Préparation) |
mAucun résumé des modifications |
||
(14 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 10 : | Ligne 10 : | ||
=== Installation MediaWiki === | === Installation MediaWiki === | ||
* création du dossier < | * création du dossier <source inline>\\nouveauserveur\phpwamp\www\konoburo\</source> | ||
* copie de MediaWiki | * copie de MediaWiki | ||
* lancement de l'installation : | * lancement de l'installation : | ||
Ligne 29 : | Ligne 29 : | ||
** habillage : | ** habillage : | ||
*** Metrolook | *** Metrolook | ||
** extensions : | ** extensions : | ||
*** Auth_remoteuser | |||
*** Highlightjs_Integration | *** Highlightjs_Integration | ||
*** intersection | *** intersection | ||
Ligne 39 : | Ligne 40 : | ||
=== Export en masse === | === Export en masse === | ||
Depuis le wiki de départ, exporter les données avec historique : | Depuis le wiki de départ, exporter les données avec historique : | ||
* < | * <source inline>\\ancienserveur\phpwamp\www\konoburo\maintenance\</source> | ||
* avec l'historique des versions : | * avec l'historique des versions : | ||
** < | ** <source inline>php.exe dumpBackup.php --full --quiet > konoburo-20211029.xml</source> | ||
* uniquement la version courante : | * uniquement la version courante : | ||
** < | ** <source inline>php dumpBackup.php --current --quiet > konoburo-20211110-1421.xml</source> | ||
* uniquement la version courante des modèles (espace de nom <code>10</code>) : | * uniquement la version courante des modèles (espace de nom <code>10</code>) : | ||
** < | ** <source inline>php dumpBackup.php --current --quiet --filter=namespace:10 > konoburo-20211110-1422.xml</source> | ||
=== Problème avec Semantic MediaWiki === | === Problème avec Semantic MediaWiki === | ||
Certains modèles sont paramétrer pour fonctionner avec l'extension Semantic MediaWiki ; utilisation de la syntaxe <code><nowiki>[[Attribut::contenu]]</nowiki></code> | |||
* extrait : <code><nowiki>-->{{#if:{{{courriel|}}}|{{courriel|[[A le courriel::{{{courriel|}}}]]}}{{br}}|}}<!--</nowiki></code> | |||
Modification des modèles contenant des éléments Semantic MediaWiki : | Modification des modèles contenant des éléments Semantic MediaWiki : | ||
* Modèle:Contact | * Modèle:Contact | ||
Ligne 58 : | Ligne 62 : | ||
=== Import des données === | === Import des données === | ||
Vers le wiki d'arrivée : | Vers le wiki d'arrivée : | ||
* < | * <source inline>\\nouveauserveur\phpwamp\www\konoburo\maintenance\</source> | ||
* < | * <source inline>php.exe importdump.php < konoburo-20211029.xml</source> | ||
Scripts de maintenance à lancer pour reconstruire : | |||
* <source inline>\\nouveauserveur\phpwamp\www\konoburo\maintenance\</source> | |||
* <source inline>php.exe rebuildrecentchanges.php</source> | |||
Scripts de maintenance à lancer pour les statistiques : | |||
* <source inline>\\nouveauserveur\phpwamp\www\konoburo\maintenance\</source> | |||
* <source inline>php.exe initSiteStats.php</source> | |||
* | |||
* | |||
=== Import des fichiers === | === Import des fichiers === | ||
S'il faut récupérer les images de l'ancien site : | S'il faut récupérer les images de l'ancien site : | ||
* source sur le wiki d'origine <code> | * source sur le wiki d'origine <code>\\ancienserveur\phpwamp\www\konoburo\images\</code> | ||
* créer une copie de travail ; | * créer une copie de travail ; exemple du dossier <code>\\nouveauserveur\Support\ImageAImporter\</code> | ||
* supprimer le contenu des sous-dossiers : | * supprimer le contenu des sous-dossiers : | ||
** <code>\archive\</code> | ** <code>\archive\</code> | ||
Ligne 81 : | Ligne 86 : | ||
Utilisation du script <code>ImportImages.php</code> : | Utilisation du script <code>ImportImages.php</code> : | ||
* https://www.mediawiki.org/wiki/Manual:ImportImages.php/fr | * https://www.mediawiki.org/wiki/Manual:ImportImages.php/fr | ||
* < | * <source inline>\\nouveauserveur\phpwamp\www\konoburo\maintenance\php.exe ImportImages.php \\nouveauserveur\Support\ImageAImporter\ --search-recursively</source> | ||
** l'option <code>--search-recursively</code> permet d'inclure les sous-dossiers | ** l'option <code>--search-recursively</code> permet d'inclure les sous-dossiers | ||
* <source inline>\\nouveauserveur\phpwamp\www\konoburo\maintenance\php.exe ImportImages.php \\nouveauserveur\Support\ImageAImporter\ --search-recursively --extensions=pdf</source> | |||
** --extensions=xls,xlsx,doc,docx,ppt,pptx,gif,jpeg,webp,wav,txt,png | |||
=== Maintenance === | === Maintenance === | ||
* < | * <source inline>\\nouveauserveur\phpwamp\www\konoburo\maintenance\</source> | ||
* < | * <source inline>php.exe rebuildrecentchanges.php</source> | ||
* < | * <source inline>php.exe initSiteStats.php</source> | ||
Maintenance générale : | |||
* https://www.mediawiki.org/wiki/Manual:Rebuildall.php | |||
** * <source inline>php.exe Rebuildall.php</source> | |||
==== PdfHandler maintenance ==== | ==== PdfHandler maintenance ==== | ||
Pour reconstruire les vignettes des PDF ; source : https://www.mediawiki.org/wiki/Extension_talk:PdfHandler | Pour reconstruire les vignettes des PDF ; source : https://www.mediawiki.org/wiki/Extension_talk:PdfHandler | ||
* <source | * <source inline>php refreshImageMetadata.php -f</source> | ||
* <source | * <source inline>php rebuildImages.php</source> | ||
==== Purge ==== | |||
PurgePage.php : équivalent à <code>action=purge</code> | |||
* commande : <code>PurgePage.php</code> | |||
* https://www.mediawiki.org/wiki/Manual:PurgePage.php | |||
PurgeList.php : | |||
* commande : <code>PurgeList.php --all-namespaces</code> | |||
* https://www.mediawiki.org/wiki/Manual:PurgeList.php | |||
=== Problème sur la recherche plein texte === | |||
Source : | |||
* https://www.mediawiki.org/wiki/Manual:UpdateSearchIndex.php | |||
Lors de la recherche plein texte, le message suivant s'affiche : | |||
* <source inline>[fe01568bfe677bff2546c789] 2021-12-10 15:45:30: Erreur fatale de type « Wikimedia\Assert\PreconditionException »</source> | |||
Actions réalisées : | |||
* <source inline>rebuildtextindex.php</source> | |||
* <source inline>UpdateSearchIndex.php</source> | |||
* exemple : <source inline>c:\temp\php\php.exe updatesearchindex.php -s 20061210160135</source> | |||
Analyse 1 : | |||
* la table <code>searchindex</code> est avec le moteur <code>MyISAM</code> au lieu de <code>InnoDB</code> ! | |||
** vu conversion avec phpmyadmin | |||
Analyse 2 : | |||
* la table <code>searchindex</code> est avec le codage <code>utf8_general_ci</code> au lieu de <code>binary</code> (comme toutes les autres tables) ! | |||
== Composer == | == Composer == | ||
Ligne 102 : | Ligne 140 : | ||
Installer simplement depuis l'installeur : | Installer simplement depuis l'installeur : | ||
* source : https://getcomposer.org/download/ | * source : https://getcomposer.org/download/ | ||
* liaison créée automatiquement avec php : < | * liaison créée automatiquement avec php : <source inline>C:\phpwamp\php\php.exe</source> | ||
* dossier créé par l'installeur, utile pour la désinstallation : < | * dossier créé par l'installeur, utile pour la désinstallation : <source inline>C:\Program Files (x86)\ComposerSetup\</source> | ||
* dossier créé par l'installeur : < | * dossier créé par l'installeur : <source inline>C:\ProgramData\ComposerSetup\bin\</source> | ||
* dossier créé par l'installeur : < | * dossier créé par l'installeur : <source inline>C:\Users\username\AppData\Roaming\Composer\vendor\bin\</source> | ||
Particularité Windows : | Particularité Windows : | ||
* utiliser la commande < | * utiliser la commande <source inline>composer.bat --version</source> en lieu et place de la ligne de commande <source inline>php composer-setup.php --version</source> | ||
Le fichier <code>composer.bat</code> contient : | Le fichier <code>composer.bat</code> contient : | ||
Ligne 127 : | Ligne 165 : | ||
=== Personnalisation === | === Personnalisation === | ||
Logo : | Logo : | ||
* fichier paramètre <code>LocalSettings.php</code> : < | * fichier paramètre <code>LocalSettings.php</code> : <source inline>$wgLogos = [ '1x' => "$wgResourceBasePath/resources/assets/konoburo.png" ];</source> | ||
Icone d'onglet : | Icone d'onglet : | ||
Ligne 141 : | Ligne 179 : | ||
==== Common.css ==== | ==== Common.css ==== | ||
<source | <source> | ||
/* Le CSS placé ici sera appliqué à tous les habillages. */ | /* Le CSS placé ici sera appliqué à tous les habillages. */ | ||
.catlinks { | .catlinks { | ||
Ligne 211 : | Ligne 249 : | ||
line-height: 1.4; | line-height: 1.4; | ||
} | } | ||
/* Ph. Page, 22/08/2013 */ | /* Ph. Page, 22/08/2013 */ |
Dernière version du 23 juillet 2023 à 20:53
La migration des données consiste à ne récupérer que les données (texte, fichiers...)
Généralité
Outil
Procédure
Installation MediaWiki
- création du dossier
\\nouveauserveur\phpwamp\www\konoburo\
- copie de MediaWiki
- lancement de l'installation :
- nom base : konoburo
- préfixe : konoburo_
- wiki privé
- aucune licence
- pas de courriel sortant
- habillage : MonoBook, Timeless, Vector
- pages spéciales : ReplaceText
- éditeurs : CodeEditor, VisualEditor, WikiEditor
- greffons analyseur syntaxique : CategoryTree, Cite, ImageMap, InputBox, ParserFunctions, Poem, Scribunto, SyntaxHighlight_GeSHi, TemplateData
- Manipulateurs de médias : PdfHandler (inclus dans le tron commun de MediaWiki 1.37.0)
- divers : MultimediaViewer, OATHAuth, TextExtracts
- téléversement de fichier activé
- mise en cache des objets PHP
- personnalisation :
- habillage :
- Metrolook
- extensions :
- Auth_remoteuser
- Highlightjs_Integration
- intersection
- MsUpload
- NewestPages
- NoTitle
- Purge
- habillage :
Export en masse
Depuis le wiki de départ, exporter les données avec historique :
\\ancienserveur\phpwamp\www\konoburo\maintenance\
- avec l'historique des versions :
php.exe dumpBackup.php --full --quiet > konoburo-20211029.xml
- uniquement la version courante :
php dumpBackup.php --current --quiet > konoburo-20211110-1421.xml
- uniquement la version courante des modèles (espace de nom
10
) :php dumpBackup.php --current --quiet --filter=namespace:10 > konoburo-20211110-1422.xml
Problème avec Semantic MediaWiki
Certains modèles sont paramétrer pour fonctionner avec l'extension Semantic MediaWiki ; utilisation de la syntaxe [[Attribut::contenu]]
- extrait :
-->{{#if:{{{courriel|}}}|{{courriel|[[A le courriel::{{{courriel|}}}]]}}{{br}}|}}<!--
Modification des modèles contenant des éléments Semantic MediaWiki :
- Modèle:Contact
- Modèle:Infobox Fournisseur
- Modèle:Infobox serveur
- Modèle:Règle proxy
- Modèle:IP
- Modèle:Menu
Import des données
Vers le wiki d'arrivée :
\\nouveauserveur\phpwamp\www\konoburo\maintenance\
php.exe importdump.php < konoburo-20211029.xml
Scripts de maintenance à lancer pour reconstruire :
\\nouveauserveur\phpwamp\www\konoburo\maintenance\
php.exe rebuildrecentchanges.php
Scripts de maintenance à lancer pour les statistiques :
\\nouveauserveur\phpwamp\www\konoburo\maintenance\
php.exe initSiteStats.php
Import des fichiers
S'il faut récupérer les images de l'ancien site :
- source sur le wiki d'origine
\\ancienserveur\phpwamp\www\konoburo\images\
- créer une copie de travail ; exemple du dossier
\\nouveauserveur\Support\ImageAImporter\
- supprimer le contenu des sous-dossiers :
\archive\
\cache\
\deleted\
\temp\
\thumb\
Utilisation du script ImportImages.php
:
- https://www.mediawiki.org/wiki/Manual:ImportImages.php/fr
\\nouveauserveur\phpwamp\www\konoburo\maintenance\php.exe ImportImages.php \\nouveauserveur\Support\ImageAImporter\ --search-recursively
- l'option
--search-recursively
permet d'inclure les sous-dossiers
- l'option
\\nouveauserveur\phpwamp\www\konoburo\maintenance\php.exe ImportImages.php \\nouveauserveur\Support\ImageAImporter\ --search-recursively --extensions=pdf
- --extensions=xls,xlsx,doc,docx,ppt,pptx,gif,jpeg,webp,wav,txt,png
Maintenance
\\nouveauserveur\phpwamp\www\konoburo\maintenance\
php.exe rebuildrecentchanges.php
php.exe initSiteStats.php
Maintenance générale :
- https://www.mediawiki.org/wiki/Manual:Rebuildall.php
- *
php.exe Rebuildall.php
- *
PdfHandler maintenance
Pour reconstruire les vignettes des PDF ; source : https://www.mediawiki.org/wiki/Extension_talk:PdfHandler
php refreshImageMetadata.php -f
php rebuildImages.php
Purge
PurgePage.php : équivalent à action=purge
- commande :
PurgePage.php
- https://www.mediawiki.org/wiki/Manual:PurgePage.php
PurgeList.php :
- commande :
PurgeList.php --all-namespaces
- https://www.mediawiki.org/wiki/Manual:PurgeList.php
Problème sur la recherche plein texte
Source :
Lors de la recherche plein texte, le message suivant s'affiche :
[fe01568bfe677bff2546c789] 2021-12-10 15:45:30: Erreur fatale de type « Wikimedia\Assert\PreconditionException »
Actions réalisées :
rebuildtextindex.php
UpdateSearchIndex.php
- exemple :
c:\temp\php\php.exe updatesearchindex.php -s 20061210160135
Analyse 1 :
- la table
searchindex
est avec le moteurMyISAM
au lieu deInnoDB
!- vu conversion avec phpmyadmin
Analyse 2 :
- la table
searchindex
est avec le codageutf8_general_ci
au lieu debinary
(comme toutes les autres tables) !
Composer
Composer est un gestionnaire de dépendances pour les bibliothèques PHP.
Installation
Installer simplement depuis l'installeur :
- source : https://getcomposer.org/download/
- liaison créée automatiquement avec php :
C:\phpwamp\php\php.exe
- dossier créé par l'installeur, utile pour la désinstallation :
C:\Program Files (x86)\ComposerSetup\
- dossier créé par l'installeur :
C:\ProgramData\ComposerSetup\bin\
- dossier créé par l'installeur :
C:\Users\username\AppData\Roaming\Composer\vendor\bin\
Particularité Windows :
- utiliser la commande
composer.bat --version
en lieu et place de la ligne de commandephp composer-setup.php --version
Le fichier composer.bat
contient :
@echo OFF :: in case DelayedExpansion is on and a path contains ! setlocal DISABLEDELAYEDEXPANSION php "%~dp0composer.phar" %*
Utilisation
Depuis le dossier d'un site MediaWiki (exemple ..\MonWiki\
), la commande suivante met à jour le dossier ..\MonWiki\vendor\
en créer toute l'arborescence nécessaire :
composer.bat update
Serveur Apache
REDEMMARER le serveur Apache pour vider les caches.
Personnalisation
Logo :
- fichier paramètre
LocalSettings.php
:$wgLogos = [ '1x' => "$wgResourceBasePath/resources/assets/konoburo.png" ];
Icone d'onglet :
- $wgFavicon = "$wgScriptPath/favicon.ico";
Personnalisation du menu
- MediaWiki:Sitenotice : permet de personnaliser l'en-tête de page ;
- MediaWiki:Sidebar : permet de personnaliser la barre de menu (positionnée sur la gauche) :
Personnalisation de l'habillage
- MediaWiki:Common.css : personnaliser la présentation pour tout le monde par une feuille de style commune ;
- Utilisateur:Pagep/common.css : personnaliser la présentation pour l'utilisateur uniquement.
Common.css
/* Le CSS placé ici sera appliqué à tous les habillages. */ .catlinks { background-color: #cccf00; border: 1px solid #aaa; padding: 5px; margin-top: 1em; clear: both; } /* Kono Buro, Ph. Page, 29/10/2021, bandeau de menu bleu */ #mw-head { background: #4066aa; } #p-logo { margin-bottom: 0; } #mw-panel div.portal { margin: 0 0.6em 0 -0.3em; padding: 0.25em 0; direction: ltr; background-position: top left; background-repeat: no-repeat; } #mw-panel div.portal h5 { margin: -0.5em 0 0 0; color: white; background: #4066aa; } .vectorTabs ul { padding: 4px; } div.vectorMenu h5 span { background-color: #4066aa; } div.vectorMenu ul { border: solid 2px #4066aa; } pre { background-color: #eef; } /* Le CSS placé ici sera appliqué à tous les habillages. */ /* Ph. Page, 15/04/2020 */ /* position menu de gauche plus haut (ancienne valeur : top: 40px; left: -7px;) */ .mw-body { margin-left: 12.5em; padding: 1.25em .5em 1.5em .5em; top: 25px; left: -17px; } /* Ph. Page, 15/04/2020 */ /* position menu de gauche plus haut (ancienne valeur : top: 40px;) */ .mw-panel { top: 20px; } /* Ph. Page, 15/04/2020 */ /* interligne plus serrée (ancienne valeur 1.6) */ .mw-body-content { line-height: 1.4; } /* Ph. Page, 22/08/2013 */ /* Boîtes déroulantes */ .NavFrame { background: #F9F9F9; border: 1px #AAA solid; padding: 2px; } .NavFrame .NavHead { background: #EFEFEF; border: 0 #AAA solid; text-align: left; font-weight: bold; } .NavFrame .NavContent { padding: 5px 0 } .collapseButton { font-weight: normal; float: right; text-align: right; width: 6em; margin-left: -100%; } pre, code { background-color: #fbfbfb; } .cache { content: '********'; } .cache:hover{ display:block; }
PHP
Extension php_apcu.dll
: