« MediaWiki » : différence entre les versions

De Le Wiki de Lug
Aller à la navigation Aller à la recherche
 
(35 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
=Alpine Linux=
[https://wiki.alpinelinux.org/wiki/MediaWiki Source] [https://www.mediawiki.org/wiki/Manual:Running_MediaWiki_on_Debian_or_Ubuntu Autre Source]
==Installation dépendances==
# apk update && apk upgrade
# apk add curl lighttpd php php-dom php-json php-pgsql php-cgi php-mbstring php-xml php-ctype php-fileinfo php-iconv php-zlib php-gd php-session php7-intl php7-pecl-apcu php7-mysqli php7-xmlreader php7-xmlwriter php7-pecl-memcached memcached git imagemagick diffutils mariadb mariadb-common mariadb-client
==Configuration de MariaDB==
On active le serveur :
# service mariadb setup
# rc-update add mariadb default
# service mariadb start
On sécurise MariaDB :
# mysql_secure_installation
Switch to unix_socket authentication [Y/n] '''y'''
Change the root password? [Y/n] '''y'''
Remove anonymous users? [Y/n] '''y'''
Disallow root login remotely? [Y/n] '''y'''
Remove test database and access to it? [Y/n] '''y'''
Reload privilege tables now? [Y/n] '''y'''
... Success!
On configure la base de donnée pour acceuillir MediaWiki :
# mysql -u root -p
MariaDB [(none)]> CREATE DATABASE <font color = green>mediawiki</font>;
MariaDB [(none)]> CREATE USER '<font color = green>mediawiki</font>'@'localhost' IDENTIFIED BY '<font color = blue>monsupermotdepasse</font>';
MariaDB [(none)]> GRANT ALL ON <font color = green>mediawiki</font>.* TO '<font color = green>mediawiki</font>'@'localhost';
MariaDB [(none)]> quit;
==Installation de MediaWiki==
On récupère la dernière version à [https://www.mediawiki.org/wiki/Download '''cette adresse'''] et on place MediaWiki dans l'arborescence du serveur Web :
# wget <nowiki>https://</nowiki>releases.wikimedia.org/mediawiki/1.36/mediawiki-<font color = green>1.36.1</font>.zip
# unzip mediawiki-<font color = green>1.36.1</font>.zip
# mv mediawiki-<font color = green>1.36.1</font> /var/www/localhost/htdocs/mediawiki
# rm mediawiki-<font color = green>1.36.1</font>.zip
On attribue les droits :
# chown -R lighttpd /var/www/localhost/htdocs/mediawiki
On édite la configuration de "lighttpd" pour activer "mod_fastcgi.conf" :
# vi /etc/lighttpd/lighttpd.conf
<font color =grey>...</font>
# uncomment for php/fastcgi support
    <font color =blue>include "mod_fastcgi.conf"</font>
# uncomment for php/fastcgi fpm support
<font color =grey>...</font>
A la fin de ce même fichier, on protège le dossier "images" de l'éxécution de scripts, par sécurité, en ajoutant :
<font color =grey>...</font>
<font color =blue>$HTTP["url"] =~  "^/mediawiki/images/" {
    fastcgi.server = ()
}</font>
On active memcached maintenant et au redemarrage :
  # service memcached start && rc-update add memcached default
On lance le serveur "lighttpd" immédiatement et au démarrage :
# service lighttpd start && rc-update add lighttpd default
== Configuration de MediaWiki ==
On se rend à l'adresse "<nowiki>http://</nowiki><font color = blue>ADRESSE_IP_SERVEUR</font>/mediawiki/mw-config/index.php" :
*On configure l'environnement linguistique..
[[File:Mediawikinstall1.PNG|border|Choix du langage..]]
*On vérifie que tous les prérequis sont satisfait :
[[File:Mediawikinstall2.PNG|border|Vérification des prérequis..]]
*Paramètre de la base de données :
[[File:Mediawikinstall3.PNG|border|Réglages de MariaDB..]]
*On peut laisser par défaut cette option et continuer :
[[File:Mediawikinstall4.PNG|border|Option par défaut..]]
*On configure le nom du Wiki et le compte administrateur, ici "admin" pour plus de simplicité :
[[File:Mediawikinstall5.PNG|border|Nom Wiki et compte admin..]]
*La page suivante comporte de nombreuses options à régler à sa guise, en fin de page on active le téléversement des fichiers, "Instant Commons" et on active "memcached" :
[[File:Mediawikinstall6.PNG|border|Une page d'option bien fournit..]]
*On confirme que la configuration est terminée pour lancer l'installation :
[[File:Mediawikinstall7.PNG|border|On est la pour ça!]]
*Le script d'installation confirme que tout s'est déroulé comme prévu :
[[File:Mediawikinstall8.PNG|border|L'installation est presque terminé!]]
*Le serveur vous envoie le fichier "LocalSettings.php" à placer dans "/var/www/localhost/htdocs/mediawiki/" :
[[File:Mediawikinstall9.PNG|border|Envoie de "LocalSettings.php"]]
Une méthode simple est de copier-coller le contenu du fichier :
# vi /var/www/localhost/htdocs/mediawiki/LocalSettings.php
<i>Copier-Coller de LocalSettings.php</i>
# chown lighttpd /var/www/localhost/htdocs/mediawiki/LocalSettings.php
*Par sécurité on lance le redémarrage de l'installation pour effacer les options sélectionner et rendre le contenu de "LocalSettings.php" inaccessible :
[[File:Mediawikinstall10.PNG|border|On lance le redémarrage de l'installation..]]
*On confirme l'effacement des données et l'installation est terminé :
[[File:Mediawikinstall11.PNG|border|On confirme l'éffacement..]]
== Sécuriser lighttpd ==
On créé le certificat :
# apk update && apk upgrade
# apk add openssl
# openssl req -newkey rsa:2048 -x509 -keyout /etc/lighttpd/server.pem -out /etc/lighttpd/server.pem -days 365 -nodes
# chmod 400 /etc/lighttpd/server.pem
On édite la configuration du serveur :
# vi /etc/lighttpd/lighttpd.conf
<font color = grey>...</font>
server.modules = (
    <font color = blue>"mod_openssl",</font>
#    "mod_rewrite",
<font color = grey>...</font>
<font color = grey>...</font>
<font color = blue>server.port            = 443
ssl.engine    = "enable"
ssl.pemfile  = "/etc/lighttpd/server.pem"</font>
On relance le service :
# service lighttpd restart
On adapte le fichier "LocalSettings.php" :
# vi /var/www/localhost/htdocs/mediawiki/LocalSettings.php
<font color = grey>...</font>
## The protocol and server name to use in fully-qualified URLs
$wgServer = "http<u><font color = blue>'''s'''</font></u>://<font color = green>ADRESSE_IP_SERVEUR</font>";
<font color = grey>...</font>
== Vhost Reverse-Proxy Nginx ==
server {
listen 80;
    listen [::]:80;
    server_name    <font color = blue>monwiki.exemple.net</font>;
    # return 404;
    return 301 <nowiki>https://</nowiki>$host$request_uri;
}
server {
#client_max_body_size 20M;
server_name    <font color = blue>monwiki.exemple.net</font>;
    error_page 403  https://<font color = blue>monwiki.exemple.net</font>;
    location / {
              proxy_set_header Host $host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
              proxy_set_header X-Forwarded-Proto $scheme;
              proxy_set_header X-Forwarded-Protocol $scheme;
              proxy_set_header X-Forwarded-Host $http_host;
              proxy_pass https://<font color = blue>ADRESSE_IP_SERVEUR</font>/mediawiki/;
    }
    listen [::]:443 ssl; # managed by Certbot
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/<font color = blue>monwiki.exemple.net</font>/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/<font color = blue>monwiki.exemple.net</font>/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
    add_header Strict-Transport-Security "max-age=31536000" always;
    ssl_trusted_certificate /etc/letsencrypt/live/<font color = blue>monwiki.exemple.net</font>/chain.pem;
    ssl_stapling on;
    ssl_stapling_verify on;
}
On adapte le fichier "LocalSettings.php" :
# vi /var/www/localhost/htdocs/mediawiki/LocalSettings.php
<font color = grey>...</font>
<font color = blue>#</font>$wgScriptPath = "/mediawiki";                                                                                                                                                                                                                                                                                                                     
<font color = blue>$wgScriptPath = "";</font>
<font color = grey>...</font>
<font color = grey>...</font>
## The protocol and server name to use in fully-qualified URLs
$wgServer = "https://<font color = blue>monwiki.exemple.net</font>";
<font color = grey>...</font>
== Mettre à jour MediWiki ==
{{Méta bandeau
  | niveau = grave
  | icône = important
  | texte  = Penser à sauvegarder votre wiki avant la mise à jour..
}}
[https://www.mediawiki.org/wiki/Manual:Upgrading/fr Source]
=== Alpine Linux ===
{{Méta bandeau
  | niveau = information
  | icône = loupe
  | texte  = Exemple sur Alpine Linux fait de la version 1.35.1 à la version 1.36.1
}}
On récupère la nouvelle version :
# cd /usr/share/webapps/
# wget https://releases.wikimedia.org/mediawiki/1.36/mediawiki-1.36.1.zip
# unzip mediawiki-1.36.1.zip
# rm mediawiki-1.36.1.zip
On attribue les droits :
# chown -R lighttpd mediawiki-1.36.1
On récupère le "LocalSettings.php" :
# cp -rp mediawiki-1.35.1/LocalSettings.php mediawiki-1.36.1/
On récupère le dossier "images" :
# cp -rp mediawiki-1.35.1/images mediawiki-1.36.1/
(Optionnel) On installe la version 1.36 de "TemplateStyles" :
# wget https://extdist.wmflabs.org/dist/extensions/TemplateStyles-REL1_36-e548bf1.tar.gz
# tar -xzf TemplateStyles-REL1_36-e548bf1.tar.gz -C /usr/share/webapps/mediawiki-1.36.1/extensions/
# chown -R lighttpd /usr/share/webapps/mediawiki-1.36.1/extensions/TemplateStyles
# rm TemplateStyles-REL1_36-e548bf1.tar.gz
(Optionnel) On installe la version 1.36 de "Scribunto" :
# wget https://extdist.wmflabs.org/dist/extensions/Scribunto-REL1_36-ac71012.tar.gz
# tar -xzf Scribunto-REL1_36-ac71012.tar.gz -C /usr/share/webapps/mediawiki-1.36.1/extensions/
# chown -R lighttpd /usr/share/webapps/mediawiki-1.36.1/extensions/Scribunto
# rm Scribunto-REL1_36-ac71012.tar.gz
(Optionnel) On récupère son logo :
# cp -rp /usr/share/webapps/mediawiki-1.35.1/skins/common/images/logo.png /usr/share/webapps/mediawiki-1.36.1/images/logo.png
{{Méta bandeau
  | niveau = information
  | icône = loupe
  | texte  = Les chemins peuvent varier selon la version et vos choix antérieur..
}}
{{Méta bandeau
  | niveau = information
  | icône = loupe
  | texte  = Dans cette exemple il faut adapter votre "LocalSettings.php" avec '''$wgLogo = "$wgScriptPath/images/logo.png";'''
}}
Ensuite il faut mettre a jour la base de données :
# php /usr/share/webapps/mediawiki-1.36.1/maintenance/update.php
On remplace le lien symbolique de l'ancien wiki par le nouveau :
# rm /var/www/localhost/htdocs/mediawiki
# ln -s /usr/share/webapps/mediawiki-1.36.1 /var/www/localhost/htdocs/mediawiki
Une fois vérifié que tout fonctionne on peut supprimer l'ancienne version :
# rm -r /usr/share/webapps/mediawiki-1.35.1
== Transférer MediaWiki ==
=== Sauvegarde ===
{{Méta bandeau
  | niveau = information
  | icône = loupe
  | texte  = Dans cet exemple les répertoires correspondent à une sauvegarde sur Debian.
}}
Sur l'ancien serveur on commence par saugarder les fichiers :
ancienwiki:~# tar zcvhf /var/www/mediawiki.tgz /var/www/mediawiki
Ensuite on sauvegarde la base de données :
ancienwiki:~# mysqldump -u <font color = blue>mediawiki</font> -p <font color = blue>mediawiki</font> > /var/www/mediawiki.sql
{{Méta bandeau
  | niveau = information
  | icône = loupe
  | texte  = Le mot de passe de l'utilisateur "mediawiki" (visible dans "LocalSettings.php") sera éxigé.
}}
=== Transfert des fichiers ===
{{Méta bandeau
  | niveau = information
  | icône = loupe
  | texte  = Dans cet exemple on transfert les fichiers de Debian à Alpine Linux, notez que pour utiliser SCP sur Alpine il faudra installer un [[SSH|'''serveur SSH''']]
}}
Depuis l'ancien serveur :
ancienwiki:~# scp /var/www/mediawiki.tgz  <font color = blue>IP_NOUVEAU_SERVEUR</font>:/var/www/localhost/htdocs/
ancienwiki:~# scp /var/www/mediawiki.sql  <font color = blue>IP_NOUVEAU_SERVEUR</font>:/var/www/localhost/htdocs/
=== Restauration ===
Sur le nouveau serveur, on commence par restaurer les fichiers :
nouveauwiki:~# cd /var/www/localhost/htdocs/
nouveauwiki:~# tar -xvzf mediawiki.tgz
nouveauwiki:~# mv var/www/mediawiki ./
nouveauwiki:~# rm -r var
On attribue les droits :
nouveauwiki:~# chown -R lighttpd:root mediawiki
Puis on restaure la base de données du wiki :
nouveauwiki:~# mysql -u mediawiki -p mediawiki < /var/www/localhost/htdocs/mediawiki.sql
{{Méta bandeau
  | niveau = information
  | icône = loupe
  | texte  = Le mot de passe de l'utilisateur "mediawiki" (visible dans "LocalSettings.php") sera éxigé.
}}
Il faudra probablement adapter "LocalSettings.php", une fois terminé il est possible de supprimer les fichiers transférés :
nouveauwiki:~# rm /var/www/localhost/htdocs/mediawiki.tgz
nouveauwiki:~# rm /var/www/localhost/htdocs/mediawiki.sql
=== Erreur LUA ===
<font color = red>Lua error: Internal error: The interpreter exited with status 127.</font>
# apk add lua
# service lighttpd restart
# vi /var/www/localhost/htdocs/mediawiki/LocalSettings.php
<font color = grey>..</font>
$wgScribuntoDefaultEngine = 'luastandalone';               
<font color = blue>$wgScribuntoEngineConf['luastandalone']['luaPath'] = '/usr/bin/lua';</font>
<font color = grey>..</font>
= Import de fonctions =
= Import de fonctions =
{{Méta bandeau
  | niveau = modéré
  | icône = important
  | texte  = Section en partie rédigé sous Debian.
}}
{{Méta bandeau
  | niveau = information
  | icône = loupe
  | texte  = Chemin sous Debian: /var/www/mediawiki
}}
{{Méta bandeau
  | niveau = information
  | icône = loupe
  | texte  = Chemin sous Alpine Linux: /var/www/localhost/htdocs/mediawiki
}}
[https://www.ryadel.com/en/how-to-add-wikipedia-mbox-templates-to-your-own-mediawiki/ Source utile]
[https://www.ryadel.com/en/how-to-add-wikipedia-mbox-templates-to-your-own-mediawiki/ Source utile]
==Réglages de base==
==Réglages de base==
Ligne 42 : Ligne 353 :
  # echo '$wgScribuntoDefaultEngine = 'luastandalone';' >> /var/www/mediawiki/LocalSettings.php
  # echo '$wgScribuntoDefaultEngine = 'luastandalone';' >> /var/www/mediawiki/LocalSettings.php
  # chmod a+x /var/www/mediawiki/extensions/Scribunto/includes/engines/LuaStandalone/binaries/lua5_1_5_linux_64_generic/lua
  # chmod a+x /var/www/mediawiki/extensions/Scribunto/includes/engines/LuaStandalone/binaries/lua5_1_5_linux_64_generic/lua
{{Méta bandeau
  | niveau = information
  | icône = loupe
  | texte  = Pour Alpine Linux et autre voir [[#Erreur_LUA|Error status 127]]
}}


=== Activer "ParserFunctions" ===
=== Activer "ParserFunctions" ===
Ligne 112 : Ligne 428 :


[[File:Export wikipedia.PNG|border|On pense a cocher "Inclure les modèles"]]
[[File:Export wikipedia.PNG|border|On pense a cocher "Inclure les modèles"]]
=Astuces de personnalisation=
=Astuces de personnalisation=
[https://www.mediawiki.org/wiki/Manual:LocalSettings.php Source]
[https://www.mediawiki.org/wiki/Manual:LocalSettings.php Source]

Version actuelle datée du 23 août 2021 à 15:31

Alpine Linux

Source Autre Source

Installation dépendances

# apk update && apk upgrade
# apk add curl lighttpd php php-dom php-json php-pgsql php-cgi php-mbstring php-xml php-ctype php-fileinfo php-iconv php-zlib php-gd php-session php7-intl php7-pecl-apcu php7-mysqli php7-xmlreader php7-xmlwriter php7-pecl-memcached memcached git imagemagick diffutils mariadb mariadb-common mariadb-client

Configuration de MariaDB

On active le serveur :

# service mariadb setup
# rc-update add mariadb default
# service mariadb start

On sécurise MariaDB :

# mysql_secure_installation
Switch to unix_socket authentication [Y/n] y
Change the root password? [Y/n] y
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y
... Success!

On configure la base de donnée pour acceuillir MediaWiki :

# mysql -u root -p
MariaDB [(none)]> CREATE DATABASE mediawiki;
MariaDB [(none)]> CREATE USER 'mediawiki'@'localhost' IDENTIFIED BY 'monsupermotdepasse';
MariaDB [(none)]> GRANT ALL ON mediawiki.* TO 'mediawiki'@'localhost';
MariaDB [(none)]> quit;

Installation de MediaWiki

On récupère la dernière version à cette adresse et on place MediaWiki dans l'arborescence du serveur Web :

# wget https://releases.wikimedia.org/mediawiki/1.36/mediawiki-1.36.1.zip
# unzip mediawiki-1.36.1.zip
# mv mediawiki-1.36.1 /var/www/localhost/htdocs/mediawiki
# rm mediawiki-1.36.1.zip

On attribue les droits :

# chown -R lighttpd /var/www/localhost/htdocs/mediawiki

On édite la configuration de "lighttpd" pour activer "mod_fastcgi.conf" :

# vi /etc/lighttpd/lighttpd.conf
...
# uncomment for php/fastcgi support
   include "mod_fastcgi.conf"
# uncomment for php/fastcgi fpm support
...

A la fin de ce même fichier, on protège le dossier "images" de l'éxécution de scripts, par sécurité, en ajoutant :

...
$HTTP["url"] =~  "^/mediawiki/images/" {
    fastcgi.server = ()
} 

On active memcached maintenant et au redemarrage :

 # service memcached start && rc-update add memcached default

On lance le serveur "lighttpd" immédiatement et au démarrage :

# service lighttpd start && rc-update add lighttpd default

Configuration de MediaWiki

On se rend à l'adresse "http://ADRESSE_IP_SERVEUR/mediawiki/mw-config/index.php" :

  • On configure l'environnement linguistique..

Choix du langage..

  • On vérifie que tous les prérequis sont satisfait :

Vérification des prérequis..

  • Paramètre de la base de données :

Réglages de MariaDB..

  • On peut laisser par défaut cette option et continuer :

Option par défaut..

  • On configure le nom du Wiki et le compte administrateur, ici "admin" pour plus de simplicité :

Nom Wiki et compte admin..

  • La page suivante comporte de nombreuses options à régler à sa guise, en fin de page on active le téléversement des fichiers, "Instant Commons" et on active "memcached" :

Une page d'option bien fournit..

  • On confirme que la configuration est terminée pour lancer l'installation :

On est la pour ça!

  • Le script d'installation confirme que tout s'est déroulé comme prévu :

L'installation est presque terminé!

  • Le serveur vous envoie le fichier "LocalSettings.php" à placer dans "/var/www/localhost/htdocs/mediawiki/" :

Envoie de "LocalSettings.php"

Une méthode simple est de copier-coller le contenu du fichier :

# vi /var/www/localhost/htdocs/mediawiki/LocalSettings.php
Copier-Coller de LocalSettings.php
# chown lighttpd /var/www/localhost/htdocs/mediawiki/LocalSettings.php
  • Par sécurité on lance le redémarrage de l'installation pour effacer les options sélectionner et rendre le contenu de "LocalSettings.php" inaccessible :

On lance le redémarrage de l'installation..

  • On confirme l'effacement des données et l'installation est terminé :

On confirme l'éffacement..

Sécuriser lighttpd

On créé le certificat :

# apk update && apk upgrade
# apk add openssl
# openssl req -newkey rsa:2048 -x509 -keyout /etc/lighttpd/server.pem -out /etc/lighttpd/server.pem -days 365 -nodes
# chmod 400 /etc/lighttpd/server.pem

On édite la configuration du serveur :

# vi /etc/lighttpd/lighttpd.conf
...
server.modules = (
    "mod_openssl",
#    "mod_rewrite",
...
...
server.port             = 443
ssl.engine    = "enable"
ssl.pemfile   = "/etc/lighttpd/server.pem"

On relance le service :

# service lighttpd restart

On adapte le fichier "LocalSettings.php" :

# vi /var/www/localhost/htdocs/mediawiki/LocalSettings.php
...
## The protocol and server name to use in fully-qualified URLs
$wgServer = "https://ADRESSE_IP_SERVEUR";
...

Vhost Reverse-Proxy Nginx

server {
listen 80;
    listen [::]:80;
    server_name     monwiki.exemple.net;
   # return 404;
    return 301 https://$host$request_uri;
}

server {
#client_max_body_size 20M;
server_name     monwiki.exemple.net;
    error_page 403  https://monwiki.exemple.net;

    location / {
             proxy_set_header Host $host;
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_set_header X-Forwarded-Proto $scheme;
             proxy_set_header X-Forwarded-Protocol $scheme;
             proxy_set_header X-Forwarded-Host $http_host;

             proxy_pass https://ADRESSE_IP_SERVEUR/mediawiki/;
    }

    listen [::]:443 ssl; # managed by Certbot
    listen 443 ssl; # managed by Certbot



    ssl_certificate /etc/letsencrypt/live/monwiki.exemple.net/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/monwiki.exemple.net/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
    add_header Strict-Transport-Security "max-age=31536000" always;
    ssl_trusted_certificate /etc/letsencrypt/live/monwiki.exemple.net/chain.pem;
    ssl_stapling on;
    ssl_stapling_verify on;

}

On adapte le fichier "LocalSettings.php" :

# vi /var/www/localhost/htdocs/mediawiki/LocalSettings.php
...
#$wgScriptPath = "/mediawiki";                                                                                                                                                                                                                                                                                                                      
$wgScriptPath = "";
...
...
## The protocol and server name to use in fully-qualified URLs
$wgServer = "https://monwiki.exemple.net";
...

Mettre à jour MediWiki

Source

Alpine Linux

On récupère la nouvelle version :

# cd /usr/share/webapps/
# wget https://releases.wikimedia.org/mediawiki/1.36/mediawiki-1.36.1.zip
# unzip mediawiki-1.36.1.zip
# rm mediawiki-1.36.1.zip

On attribue les droits :

# chown -R lighttpd mediawiki-1.36.1

On récupère le "LocalSettings.php" :

# cp -rp mediawiki-1.35.1/LocalSettings.php mediawiki-1.36.1/

On récupère le dossier "images" :

# cp -rp mediawiki-1.35.1/images mediawiki-1.36.1/

(Optionnel) On installe la version 1.36 de "TemplateStyles" :

# wget https://extdist.wmflabs.org/dist/extensions/TemplateStyles-REL1_36-e548bf1.tar.gz
# tar -xzf TemplateStyles-REL1_36-e548bf1.tar.gz -C /usr/share/webapps/mediawiki-1.36.1/extensions/
# chown -R lighttpd /usr/share/webapps/mediawiki-1.36.1/extensions/TemplateStyles
# rm TemplateStyles-REL1_36-e548bf1.tar.gz

(Optionnel) On installe la version 1.36 de "Scribunto" :

# wget https://extdist.wmflabs.org/dist/extensions/Scribunto-REL1_36-ac71012.tar.gz
# tar -xzf Scribunto-REL1_36-ac71012.tar.gz -C /usr/share/webapps/mediawiki-1.36.1/extensions/
# chown -R lighttpd /usr/share/webapps/mediawiki-1.36.1/extensions/Scribunto
# rm Scribunto-REL1_36-ac71012.tar.gz

(Optionnel) On récupère son logo :

# cp -rp /usr/share/webapps/mediawiki-1.35.1/skins/common/images/logo.png /usr/share/webapps/mediawiki-1.36.1/images/logo.png

Ensuite il faut mettre a jour la base de données :

# php /usr/share/webapps/mediawiki-1.36.1/maintenance/update.php

On remplace le lien symbolique de l'ancien wiki par le nouveau :

# rm /var/www/localhost/htdocs/mediawiki
# ln -s /usr/share/webapps/mediawiki-1.36.1 /var/www/localhost/htdocs/mediawiki

Une fois vérifié que tout fonctionne on peut supprimer l'ancienne version :

# rm -r /usr/share/webapps/mediawiki-1.35.1

Transférer MediaWiki

Sauvegarde

Sur l'ancien serveur on commence par saugarder les fichiers :

ancienwiki:~# tar zcvhf /var/www/mediawiki.tgz /var/www/mediawiki

Ensuite on sauvegarde la base de données :

ancienwiki:~# mysqldump -u mediawiki -p mediawiki > /var/www/mediawiki.sql

Transfert des fichiers

Depuis l'ancien serveur :

ancienwiki:~# scp /var/www/mediawiki.tgz  IP_NOUVEAU_SERVEUR:/var/www/localhost/htdocs/
ancienwiki:~# scp /var/www/mediawiki.sql  IP_NOUVEAU_SERVEUR:/var/www/localhost/htdocs/

Restauration

Sur le nouveau serveur, on commence par restaurer les fichiers :

nouveauwiki:~# cd /var/www/localhost/htdocs/
nouveauwiki:~# tar -xvzf mediawiki.tgz
nouveauwiki:~# mv var/www/mediawiki ./
nouveauwiki:~# rm -r var

On attribue les droits :

nouveauwiki:~# chown -R lighttpd:root mediawiki

Puis on restaure la base de données du wiki :

nouveauwiki:~# mysql -u mediawiki -p mediawiki < /var/www/localhost/htdocs/mediawiki.sql

Il faudra probablement adapter "LocalSettings.php", une fois terminé il est possible de supprimer les fichiers transférés :

nouveauwiki:~# rm /var/www/localhost/htdocs/mediawiki.tgz
nouveauwiki:~# rm /var/www/localhost/htdocs/mediawiki.sql

Erreur LUA

Lua error: Internal error: The interpreter exited with status 127.
# apk add lua
# service lighttpd restart
# vi /var/www/localhost/htdocs/mediawiki/LocalSettings.php
..
$wgScribuntoDefaultEngine = 'luastandalone';                
$wgScribuntoEngineConf['luastandalone']['luaPath'] = '/usr/bin/lua';
..

Import de fonctions

Source utile

Réglages de base

Activer Import & ImageMagick

# vi /var/www/mediawiki/LocalSettings.php
$wgEnableUploads = true;
$wgUseImageMagick = true;
$wgImageMagickConvertCommand = "/usr/bin/convert";
# apt install imagemagick

Activer "IstantCommons

source

# vi /var/www/mediawiki/LocalSettings.php
$wgUseInstantCommons = true;

CSS Wikipedia

  1. Se connecter sur son Wiki (avec droit d'éditiont)
  2. Se rendre à l'adresse "https://mon-mediawiki.com/index.php?title=MediaWiki:Common.css"
  3. cliquer sur "Edit" et remplacer par ce code-ci!
  4. Il faudra vider le cache de son navigateur / recharger avec Ctrl + F5

Installation extension "TemplateStyles"

source

# cd /tmp/
# wget https://extdist.wmflabs.org/dist/extensions/TemplateStyles-REL1_35-7a40a6a.tar.gz
# tar -xzf TemplateStyles-REL1_35-7a40a6a.tar.gz -C /var/www/mediawiki/extensions
# chown -R www-data. /var/www/mediawiki/extensions/TemplateStyles
# echo 'wfLoadExtension( 'TemplateStyles' );' >> /var/www/mediawiki/LocalSettings.php

Installation extension "Scribunto"

Source

# cd /tmp/
# wget https://extdist.wmflabs.org/dist/extensions/Scribunto-REL1_35-d21b655.tar.gz
# tar -xzf Scribunto-REL1_35-d21b655.tar.gz -C /var/www/mediawiki/extensions/Scribunto/
# chown -R www-data. /var/www/mediawiki/extensions/Scribunto
# echo 'wfLoadExtension( 'Scribunto' );' >> /var/www/mediawiki/LocalSettings.php
# echo '$wgScribuntoDefaultEngine = 'luastandalone';' >> /var/www/mediawiki/LocalSettings.php
# chmod a+x /var/www/mediawiki/extensions/Scribunto/includes/engines/LuaStandalone/binaries/lua5_1_5_linux_64_generic/lua

Activer "ParserFunctions"

# echo 'wfLoadExtension( 'ParserFunctions' );' >> /var/www/mediawiki/LocalSettings.php
# echo '$wgPFEnableStringFunctions = true;' >> /var/www/mediawiki/LocalSettings.php

Exemple Serveur Wikipedia et barre de progression

100 % la preuve par l'exemple!

   

Export chez Wikipedia

Page d'export soit "/Spécial:Exporter"

J'ai exporté les modèles suivant :

Modèle:Progression
Modèle:0/4
Modèle:1/4
Modèle:2/4
Modèle:3/4
Modèle:4/4
Modèle:Avancement
Modèle:Barre de progression

Exemple export pour barres de progression

Import sur son wiki

Allez sur la page spécial "Importer des pages" soit "/Special:Import"

Exemple export pour barres de progression

Erreur "The content model 'sanitized-css' is not registered on this wiki."

Échec de l’importation : The content model 'sanitized-css' is not registered on this wiki. See https://www.mediawiki.org/wiki/Content_handlers to find out which extensions handle this content model.

Installer l'extension "TemplateStyles"

Erreur "The content model 'Scribunto' is not registered on this wiki."

Échec de l’importation : The content model 'Scribunto' is not registered on this wiki. See https://www.mediawiki.org/wiki/Content_handlers to find out which extensions handle this content model.

Installer l'extension "Scribunto"


(erreur d'affichage "{{#expr".. etc)

Activer "ParserFunctions"

Bandeau d'information/avertissement

J'ai exporté tous les modules "Lua" via cette page.

Module:Format
Module:Date
Module:MagicDate
Module:Test
Module:ControlArgs
Module:Documentation module
Module:Bandeau

On pense a cocher "Inclure les modèles"

Puis ces modèles :

Modèle:Méta bandeau
Modèle:Méta bandeau d'avertissement
Modèle:Méta bandeau de section


On pense a cocher "Inclure les modèles"

Astuces de personnalisation

Source

Nom du Wiki

# vi /var/www/mediawiki/LocalSettings.php
$wgSitename = "Le nom de mon Wiki";

Il faut placer son logo dans "/var/www/mediawiki/skins/common/images/"

# mkdir -p /var/www/mediawiki/skins/common/images

On copie son image (ex: logo.png) dans /var/www/mediawiki/skins/common/images/

# chown -R www-data. /var/www/mediawiki/skins/common
# vi /var/www/mediawiki/LocalSettings.php
...
$wgLogo = "/skins/common/images/logo.png";
...

Edition disponible uniquement pour les utilisateur authentifiés

# echo '$wgGroupPermissions['*']['edit'] = false;' >> /var/www/mediawiki/LocalSettings.php