Instal·lació i configuració de la Mediawiki, 1a part
La revisió el 16:04, 8 abr 2021 per Joan (discussió | contribucions) (Es crea la pàgina amb «=Introducció= =Desenvolupament= <pre> You are missing a required extension to PHP that MediaWiki requires to run. Please install: mbstring (more information) https...».)
Introducció
Desenvolupament
You are missing a required extension to PHP that MediaWiki requires to run. Please install:
mbstring (more information)
https://www.php.net/manual/en/book.mbstring.php
sudo apt-cache search php | grep mbstring
php-mbstring - MBSTRING module for PHP [default]
php7.4-mbstring - MBSTRING module for PHP
sudo apt-get install php-mbstring
mirar la funció phpinfo()
<?php
phpinfo();
?>
reiniciar apache
psql -h localhost -p 5432 -U postgres -d postgres
nom de la wiki: wikibalmes
nom usuari: joan
s'ha creat el fitxer LocalSettings.php
$ psql -h localhost -p 5432 -U postgres -d my_wiki
Password for user postgres:
psql (12.4 (Ubuntu 12.4-0ubuntu0.20.04.1))
SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off)
Type "help" for help.
my_wiki=#
Per veure totes les taules:
my_wiki=# \dt mediawiki.*
$ cd ~/M09_IAW_2021/UF2/mediawiki-1.35.1/
$ find . -type f -print | xargs egrep -i "CREATE DATABASE"
...
./includes/installer/DatabaseInstaller.php: * Create database tables from scratch.
...
./includes/installer/PostgresInstaller.php: $conn->query( "CREATE DATABASE $safedb", __METHOD__ );
...
fitxers importants:
./includes/installer/DatabaseInstaller.php
./includes/installer/PostgresInstaller.php
./maintenance/postgres/archives/tables.sql
TODO
posar el logo
aprendre les marques bàsiques d'edició
crear una pàgina, posar-hi una imatge
fer una sentència SQL: títol de la pàgina, contingut de la pàgina, revisions de la pàgina
fer la còpia de seguretat (base de dades postgres, LocalSettings.php, imatges)
LocalSettings.php
$wgLogos = [ '1x' => "$wgResourceBasePath/resources/assets/wiki.png" ];
habilitar pujada de fitxers
$wgEnableUploads = true;
$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'pdf', 'gz' );
http://localhost/wiki/index.php/Fitxer:Baixa.jpeg
Fem una edició bàsica amb 2 nivells, posem una foto.
*https://www.mediawiki.org/wiki/Help:Editing
Fem vàries modificacions (revisions) de la pàgina
SQL:
my_wiki=# select page_id,page_title,page_latest from mediawiki.page;
page_id | page_title | page_latest
---------+------------------+-------------
1 | Pàgina_principal | 3
3 | Pàgina_1 | 7
2 | Baixa.jpeg | 4
(3 rows)
revisions sobre la pàgina 3. Fixar-se que page_latest=7, que és el comptador de revisions:
detalls de la revisió 7:
select * from mediawiki.revision where rev_id=7;
revisions:
select * from mediawiki.revision;
revisions sobre la pàgina 3:
select * from mediawiki.revision where rev_page=3;
Contingut de la pàgina 3 (la revisió 7 de la pàgina 3):
per saber els camps:
my_wiki=# \d mediawiki.pagecontent
my_wiki=# select old_text from mediawiki.pagecontent where old_id=7;
Fem una modificació directament amb SQL:
my_wiki=# update mediawiki.pagecontent set old_text = concat(old_text,'afegim aquesta cadena de text') where old_id=7;
Però no n'hi ha prou. Hem de canviar el camp page_touched per obligar a què es renderitzi la pàgina. Posarem el timestamp del dia i hora actuals.
update mediawiki.page set page_touched='2021-04-08 17:37:22+02' where page_id=3;
Ara si refresquem la pàgina veurem que els canvis ja estan publicats.
Còpia de seguretat
------------------
la imatge que hem penjat està disponible a images/. També tenim disponible la versió de thumbnail.
Quan fem una còpia de seguretat, hem de pensar en la base de dades, i en els altres fitxers.
Per fer la còpia de seguretat, seguim el mateix esquema que féiem amb la còpia de seguretat del Wordpress (però recordem que ara fem servir Postgres i no MySQL).
copia_seguretat.sh
#!/bin/bash
NOM_BACKUP="Mediawiki"
tdate=`date +%y%m%d`
export PGPASSWORD=postgres
#1. Còpia de seguretat mysql local
#mysqldump --add-drop-table -i -C -u alumne -pkeiL2lai -r ./backup/wordpress_"$tdate".dmp -v wordpress
pg_dump -h localhost -U postgres -F t -d my_wiki > /home/joan/M09_IAW_2021/UF2/mediawiki-1.35.1/copia_seguretat/mediawiki_"$tdate".tar
#2. Còpia dels fitxers de la web (conté els uploads, entre altres coses)
cp -r /home/joan/M09_IAW_2021/UF2/mediawiki-1.35.1/images /home/joan/M09_IAW_2021/UF2/mediawiki-1.35.1/copia_seguretat
#3. Fitxer llegir.txt, LocalSettings.php, etc
cp -r /home/joan/M09_IAW_2021/UF2/mediawiki-1.35.1/llegir.txt /home/joan/M09_IAW_2021/UF2/mediawiki-1.35.1/copia_seguretat
cp -r /home/joan/M09_IAW_2021/UF2/mediawiki-1.35.1/LocalSettings.php /home/joan/M09_IAW_2021/UF2/mediawiki-1.35.1/copia_seguretat
exit 0
Un pas més enllà: editar la Viquipèdia catalana (que ha acomplert 20 anys).
Entrega
Entregaràs la pràctica al Classroom. Només se't demana que demostris que has fet una instal·lació correcta de la Mediawiki, i que has solucionat els possibles problemees.
creat per Joan Quintana Compte, abril 2021