MediaWiki kasutamine Debianiga: erinevus redaktsioonide vahel

Allikas: Imre kasutab arvutit
Mine navigeerimisribaleMine otsikasti
(Uus lehekülg: '===Sissejuhatus=== MediaWiki http://www.mediawiki.org/wiki/MediaWiki PHP keeles progammeeritud Wiki tarkvara. ===MediaWiki paigaldamine=== Tundub, et 2016 aastal töötab...')
 
 
(ei näidata sama kasutaja 3 vahepealset redaktsiooni)
5. rida: 5. rida:
 
===MediaWiki paigaldamine===
 
===MediaWiki paigaldamine===
   
Tundub, et 2016 aastal töötab MediaWiki v. 1.27.1 sellises keskkonnas
+
Tundub, et 2016 aastal töötab MediaWiki v. 1.27.1 sellises keskkonnas
   
 
* Debian v. 9 Stretch keskkonnas
 
* Debian v. 9 Stretch keskkonnas
16. rida: 16. rida:
 
# apt-get install php-pgsql php-gd
 
# apt-get install php-pgsql php-gd
   
ja paigaldame paketihaldusest kõik va mediawiki ise
+
ja paigaldame paketihaldusest kõik va mediawiki ise
   
 
# apt-get install `echo $(apt-get install mediawiki -s | grep ^Inst | grep -v mediawiki | awk {'print $2'})` -s
 
# apt-get install `echo $(apt-get install mediawiki -s | grep ^Inst | grep -v mediawiki | awk {'print $2'})` -s
22. rida: 22. rida:
 
====Andmebaas====
 
====Andmebaas====
   
MediaWiki andmebaasina on kõige pikema ajalooga MySQL, tundub, et 2012 aastal töötab ka PostgreSQL, sobib kasutada sellist nt kasutajat
+
MediaWiki andmebaasina on kõige pikema ajalooga MySQL, tundub, et 2012 aastal töötab ka PostgreSQL, sobib kasutada sellist nt kasutajat
   
  +
<pre>
CREATE ROLE mw1181 LOGIN
 
  +
# su - postgres
ENCRYPTED PASSWORD 'md581942c14772222af1bdff4fc50bb0701'
 
  +
$ psql
NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE;
+
sql> CREATE ROLE mw LOGIN NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE;
ALTER ROLE mw1181 SET TimeZone='GMT';
 
ALTER ROLE mw1181 SET DateStyle='ISO, YMD';
+
sql> ALTER ROLE mw SET TimeZone='GMT';
ALTER ROLE mw1181 SET search_path=mediawiki, public;
+
sql> ALTER ROLE mw SET DateStyle='ISO, YMD';
ALTER ROLE mw1181 SET client_min_messages='error';
+
sql> ALTER ROLE mw SET search_path=mediawiki, public;
  +
sql> ALTER ROLE mw SET client_min_messages='error';
  +
sql> \password mw
  +
</pre>
   
 
ja sellist andmebaasi
 
ja sellist andmebaasi
   
  +
<pre>
CREATE DATABASE mw1181
+
CREATE DATABASE mw
WITH OWNER = mw1181
+
WITH OWNER = mw
 
ENCODING = 'UTF8'
 
ENCODING = 'UTF8'
 
TABLESPACE = pg_default
 
TABLESPACE = pg_default
41. rida: 45. rida:
 
LC_CTYPE = 'et_EE.UTF-8'
 
LC_CTYPE = 'et_EE.UTF-8'
 
CONNECTION LIMIT = -1;
 
CONNECTION LIMIT = -1;
  +
</pre>
   
Tavaliselt kasutatakse MediaWiki andmete jaoks andmebaasi skeemi 'mediawiki'.
+
Tavaliselt kasutatakse MediaWiki andmete jaoks andmebaasi skeemi 'mediawiki' (seal põhjusel on search path esimesel kohal 'mediawiki'.
 
2019 PostgreSQL
 
 
postgres=# CREATE USER qt WITH NOCREATEDB NOCREATEROLE NOSUPERUSER INHERIT PASSWORD 'parool';
 
CREATE ROLE
 
postgres=# CREATE DATABASE db_qt WITH OWNER qt;
 
CREATE DATABASE
 
   
 
====Veebiserver====
 
====Veebiserver====
56. rida: 54. rida:
   
 
Alias /wiki /srv/www/mw/index.php
 
Alias /wiki /srv/www/mw/index.php
  +
 
 
<Directory /srv/www/mw>
 
<Directory /srv/www/mw>
 
Options All
 
Options All
81. rida: 79. rida:
 
# chown -R www-data:www-data mw-1.9.6
 
# chown -R www-data:www-data mw-1.9.6
   
  +
Seejärel avada vastav lehekülg brauseris nt http://x.x.x.x/ ja läbida installeri dialoogid. Paigaldamise lõpus öeldakse kokkuvõttes õnnestumise või ebaõnnestumise kohta. Peale brauseriga töötamist tuleb kopeerida LocalSettings.php seadistusfaili rakenduse juurkataloogi ning kohendada failisüsteemi omanik:grupp väärtused.
Seejärel avada vastav lehekülg brauseris
 
 
[[Pilt:Mediawiki-1.gif]]
 
 
Paigaldamise lõpus öeldakse
 
 
[[Pilt:Mediawiki-2.gif]]
 
 
Peale brauseriga töötamist tuleb kopeerida LocalSettings.php seadistusfaili rakenduse juurkataloogi ning kohendada failisüsteemi omanik:grupp väärtused.
 
   
 
===MediaWiki seadistamine===
 
===MediaWiki seadistamine===
   
====Ligipääsuprivileegide kehtestamine====
+
====Ligipääsuprivileegide kehtestamine====
   
 
Selleks, et veebiliidese kaudu ei saaks wikisse kasutajaid tekitada sobib kasutada seadistusfailis LocalSettings.php ridu
 
Selleks, et veebiliidese kaudu ei saaks wikisse kasutajaid tekitada sobib kasutada seadistusfailis LocalSettings.php ridu
104. rida: 94. rida:
 
TODO
 
TODO
   
====Erileheküljed====
+
====Erileheküljed====
   
Nn Erilehekülgede sektsioonis on mitmed halduseks või wikis toimuvast ülevaate saamiseks vajalikud leheküljed, nt
+
Nn Erilehekülgede sektsioonis on mitmed halduseks või wikis toimuvast ülevaate saamiseks vajalikud leheküljed, nt
   
  +
* Kõik leheküljed
* Kõik leheküljed
 
 
* Piltide loend
 
* Piltide loend
 
* Kasutajad
 
* Kasutajad
* Lehekülgede eksport/import
+
* Lehekülgede eksport/import
 
* Versioon
 
* Versioon
   
118. rida: 108. rida:
 
MediaWiki teksti importimiseks saab kasutada MediaWikist eksporditud tekste.
 
MediaWiki teksti importimiseks saab kasutada MediaWikist eksporditud tekste.
   
===Failide üleslaadimine===
+
===Failide üleslaadimine===
   
Vaikimisi ei saa wikisse faile üles laadida, üleslaadimise lubamiseks tuleb kasutada LocalSetting.php failis nt ridu
+
Vaikimisi ei saa wikisse faile üles laadida, üleslaadimise lubamiseks tuleb kasutada LocalSetting.php failis nt ridu
   
 
$wgEnableUploads = true;
 
$wgEnableUploads = true;
131. rida: 121. rida:
 
kus
 
kus
   
* --user=priit - kasutaja kellena näidatakse, et andmed wikisse kopeeriti
+
* --user=priit - kasutaja kellena näidatakse, et andmed wikisse kopeeriti
   
Seejuures tuleb arvestada, et nii üleslaaditud failid on failisüsteemis selle kasutaja:grupiga, millena skripti käivitati.
+
Seejuures tuleb arvestada, et nii üleslaaditud failid on failisüsteemis selle kasutaja:grupiga, millena skripti käivitati.
   
 
===MediaWiki tarkvara uuendamine===
 
===MediaWiki tarkvara uuendamine===
   
Olemasoleva tarkvara versiooni saab küsida
+
Olemasoleva tarkvara versiooni saab küsida
   
Erileheküljed -> Versioon
+
Erileheküljed -> Versioon
   
MediaWiki uuendamist kirjeldatakse aadressil https://www.mediawiki.org/wiki/Manual:Upgrading. MediaWiki uuendamiseks on kaks erinevat võimalust
+
MediaWiki uuendamist kirjeldatakse aadressil https://www.mediawiki.org/wiki/Manual:Upgrading. MediaWiki uuendamiseks on kaks erinevat võimalust
   
* tekitada uuemast versioonist uus puhas paigaldus (failisüsteemi ja andmebaasi osas) ning laadida artiklite .xml dump sisse (lisaks pildid)
+
* tekitada uuemast versioonist uus puhas paigaldus (failisüsteemi ja andmebaasi osas) ning laadida artiklite .xml dump sisse (lisaks pildid)
* uuendada olemasolevat failisüsteemi ning rakendada skriptiga andmebaasimuudatused
+
* uuendada olemasolevat failisüsteemi ning rakendada skriptiga andmebaasimuudatused
   
Teise variandi puhul on veel omakorda mitmeid võimalusi, nt
+
Teise variandi puhul on veel omakorda mitmeid võimalusi, nt
   
* kopeerida olemasolev failisüsteemi osa üle uuema sisuga
+
* kopeerida olemasolev failisüsteemi osa üle uuema sisuga
* rakendada olemasolevale failisüsteemi osale patch abil muudatused (võimalik vaid minor uuenduste puhul, nt 1.20.2 -> 1.20.3)
+
* rakendada olemasolevale failisüsteemi osale patch abil muudatused (võimalik vaid minor uuenduste puhul, nt 1.20.2 -> 1.20.3)
   
====Failisüsteemi osa paikamine uue tar.gz arhiivi olemasoleva kõrvale lahtipakkimise teel====
+
====Failisüsteemi osa paikamine uue tar.gz arhiivi olemasoleva kõrvale lahtipakkimise teel====
   
v. 1.27.1 uuendamise juhend õpetab, et uue versiooni .tar.gz tuleb lahti pakkida tühja kataloogi ning seejärel
+
v. 1.27.1 uuendamise juhend õpetab, et uue versiooni .tar.gz tuleb lahti pakkida tühja kataloogi ning seejärel
   
 
* pg_dump ja pg_restore abil migreerida vajadusel baas uuele baasi mootorile
 
* pg_dump ja pg_restore abil migreerida vajadusel baas uuele baasi mootorile
* kopeerida vanast LocalSettings.php (maksab jälgida mis on muutunud, kuigi tundub, et mitte midagi märkimisväärset nt v. 1.21.x -> 1.27.1 uuendamisel)
+
* kopeerida vanast LocalSettings.php (maksab jälgida mis on muutunud, kuigi tundub, et mitte midagi märkimisväärset nt v. 1.21.x -> 1.27.1 uuendamisel)
* extensions ja skins alla kopeerida vajalike asjade uus versioon isandate käest
+
* extensions ja skins alla kopeerida vajalike asjade uus versioon isandate käest
 
* uuendada baas
 
* uuendada baas
   
163. rida: 153. rida:
 
$ php update.php
 
$ php update.php
   
* kohendada failisüsteemis failide omanikud
+
* kohendada failisüsteemis failide omanikud
   
====Failisüsteemi osa paikamine uue tar.gz arhiivi üle olemasoleva lahtipakkimise teel====
+
====Failisüsteemi osa paikamine uue tar.gz arhiivi üle olemasoleva lahtipakkimise teel====
   
 
Sellised sammud sobivad sama major versiooni uuendamiseks, nt 1.16.0 -> 1.16.5
 
Sellised sammud sobivad sama major versiooni uuendamiseks, nt 1.16.0 -> 1.16.5
   
* Lõpetada kasutajate ligipääs veebikohale.
+
* Lõpetada kasutajate ligipääs veebikohale.
 
* Teha varukoopia andmebaasist ja veebiserveris olevatest andmetest.
 
* Teha varukoopia andmebaasist ja veebiserveris olevatest andmetest.
 
* Pakkida lahti uue versiooni arhiiv vana peale, failid asendatakse
 
* Pakkida lahti uue versiooni arhiiv vana peale, failid asendatakse
175. rida: 165. rida:
 
$ tar zxf /opt/postgres/20110506/mediawiki-1.16.5.tar.gz -C /srv/www/html/wiki/ --strip-components=1
 
$ tar zxf /opt/postgres/20110506/mediawiki-1.16.5.tar.gz -C /srv/www/html/wiki/ --strip-components=1
   
====Failisüsteem osa paikamine uue versiooni patch'iga paikamise teel====
+
====Failisüsteem osa paikamine uue versiooni patch'iga paikamise teel====
   
 
# patch -p1 --dry-run < ../../private/mediawiki-1.18.4.patch
 
# patch -p1 --dry-run < ../../private/mediawiki-1.18.4.patch
214. rida: 204. rida:
 
Uuendamine
 
Uuendamine
   
* operatsioonisüsteem - debian v. 9 -> debian v. 10
+
* operatsioonisüsteem - debian v. 9 -> debian v. 10
 
* postgresql v. 9.6 -> v. 12
 
* postgresql v. 9.6 -> v. 12
   
 
postgres@db-4:~/20200112$ pg_dumpall > pg_dumpall-20200114.sql
 
postgres@db-4:~/20200112$ pg_dumpall > pg_dumpall-20200114.sql
   
Uuendamine toimub üldiselt tavalisel viisil, aga selliste erisustega
+
Uuendamine toimub üldiselt tavalisel viisil, aga selliste erisustega
   
* tekitada wikisse kasutajad kõigile artiklite autoritele
+
* tekitada wikisse kasutajad kõigile artiklite autoritele
 
* kohendada sql sisu vajadusel
 
* kohendada sql sisu vajadusel
   
234. rida: 224. rida:
 
$ php importDump.php mw-1.16.5-dumpBackup.xml
 
$ php importDump.php mw-1.16.5-dumpBackup.xml
   
Pildid tuleb lisada käsitsi
+
Pildid tuleb lisada käsitsi
   
* kopeerida images kataloogis ühte kataloogi pildid kokku
+
* kopeerida images kataloogis ühte kataloogi pildid kokku
  +
* öelda
* öelda
 
   
 
$ cd maintenance
 
$ cd maintenance
244. rida: 234. rida:
 
===Varundamine ja taaste===
 
===Varundamine ja taaste===
   
MediaWiki varundamiseks tuleb pöörata tähelepanu sellistele andmetele
+
MediaWiki varundamiseks tuleb pöörata tähelepanu sellistele andmetele
   
 
* andmebaasi mediawiki skeem, kuhu on salvestatud wiki artiklite tekstid
 
* andmebaasi mediawiki skeem, kuhu on salvestatud wiki artiklite tekstid
* veebijuurika failisüsteem, kus on PHP mootor + üles laaditud failid
+
* veebijuurika failisüsteem, kus on PHP mootor + üles laaditud failid
* lisaks peaks olema teada süsteemi parameetrid, nt andmebaasi kodeering, veebiserver seadistused jms
+
* lisaks peaks olema teada süsteemi parameetrid, nt andmebaasi kodeering, veebiserver seadistused jms
   
 
===Skin kasutamine===
 
===Skin kasutamine===
   
Skin abil saab kontrollida Mediawiki väljanägemist, sh kuidas ta paistab nutiseadmel. Kasutamiseks tuleb skin kopeerida ja pakkida lahti alamkataloogi skins.
+
Skin abil saab kontrollida Mediawiki väljanägemist, sh kuidas ta paistab nutiseadmel. Kasutamiseks tuleb skin kopeerida ja pakkida lahti alamkataloogi skins.
   
 
====MediaWiki nutitelefonile====
 
====MediaWiki nutitelefonile====
   
Kuna nutitelefoni ja tahvelarvuti ekraan on töökohaarvuti omast reeglina oluliselt pisem (nt vastavalt 5" ja 10" diagonaal), annab teksti esitamisel parema tulemuse väiksemale erkaanile paremini sobiv vormindus. Üks otsekohene viis seda korraldada on kasutada väiksema ekraani jaoks ettevalmistatud MediaWiki skin'i, nt
+
Kuna nutitelefoni ja tahvelarvuti ekraan on töökohaarvuti omast reeglina oluliselt pisem (nt vastavalt 5" ja 10" diagonaal), annab teksti esitamisel parema tulemuse väiksemale erkaanile paremini sobiv vormindus. Üks otsekohene viis seda korraldada on kasutada väiksema ekraani jaoks ettevalmistatud MediaWiki skin'i, nt
 
http://www.mediawiki.org/wiki/Manual:Gallery_of_user_styles#WPtouch. Kasutamiseks tuleb
 
http://www.mediawiki.org/wiki/Manual:Gallery_of_user_styles#WPtouch. Kasutamiseks tuleb
   
263. rida: 253. rida:
 
skins/
 
skins/
   
* asendada seadistusfailis LocalSettings.php rida (või sarnane)
+
* asendada seadistusfailis LocalSettings.php rida (või sarnane)
   
 
$wgDefaultSkin = "monobook";
 
$wgDefaultSkin = "monobook";
   
nt lõiguga
+
nt lõiguga
   
 
if (preg_match("/(mobile|webos|opera mini)/i", $_SERVER['HTTP_USER_AGENT'])) {
 
if (preg_match("/(mobile|webos|opera mini)/i", $_SERVER['HTTP_USER_AGENT'])) {
309. rida: 299. rida:
 
===SSL offload===
 
===SSL offload===
   
Tundub, et MediaWiki töötab üsna hästi SSL offload taga, nt NginX puhul. Selleks tuleb
+
Tundub, et MediaWiki töötab üsna hästi SSL offload taga, nt NginX puhul. Selleks tuleb
   
 
* LocalSetting failis kasutada vastavat rida, nt
 
* LocalSetting failis kasutada vastavat rida, nt
320. rida: 310. rida:
 
SetEnv HTTPS on
 
SetEnv HTTPS on
   
* NginX seadistamise koht vt [[:Nginx veebiserveri kasutamine operatsioonisüsteemiga Debian]]
+
* NginX seadistamise koht vt [[:Nginx veebiserveri kasutamine operatsioonisüsteemiga Debian]]
   
 
===Kasulikud lisamaterjalid===
 
===Kasulikud lisamaterjalid===

Viimane redaktsioon: 14. jaanuar 2022, kell 13:16

Sissejuhatus

MediaWiki http://www.mediawiki.org/wiki/MediaWiki PHP keeles progammeeritud Wiki tarkvara.

MediaWiki paigaldamine

Tundub, et 2016 aastal töötab MediaWiki v. 1.27.1 sellises keskkonnas

  • Debian v. 9 Stretch keskkonnas
  • PHP v. 7
  • PostgreSQL v. 9.6

Ettevalmistamine, paigaldatakse pgdg postresql-12

# apt-get install postgresql-12
# apt-get install php-pgsql php-gd

ja paigaldame paketihaldusest kõik va mediawiki ise

# apt-get install `echo $(apt-get install mediawiki -s | grep ^Inst | grep -v mediawiki | awk {'print $2'})` -s 

Andmebaas

MediaWiki andmebaasina on kõige pikema ajalooga MySQL, tundub, et 2012 aastal töötab ka PostgreSQL, sobib kasutada sellist nt kasutajat

# su - postgres
$ psql
sql> CREATE ROLE mw LOGIN NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE;
sql> ALTER ROLE mw SET TimeZone='GMT';
sql> ALTER ROLE mw SET DateStyle='ISO, YMD';
sql> ALTER ROLE mw SET search_path=mediawiki, public;
sql> ALTER ROLE mw SET client_min_messages='error';
sql> \password mw

ja sellist andmebaasi

CREATE DATABASE mw
   WITH OWNER = mw
        ENCODING = 'UTF8'
        TABLESPACE = pg_default
        LC_COLLATE = 'et_EE.UTF-8'
        LC_CTYPE = 'et_EE.UTF-8'
        CONNECTION LIMIT = -1;

Tavaliselt kasutatakse MediaWiki andmete jaoks andmebaasi skeemi 'mediawiki' (seal põhjusel on search path esimesel kohal 'mediawiki'.

Veebiserver

Nn ilusate URLide jaoks sobib kasutada nt sellist Apache virtual hosti sektsiooni

Alias /wiki /srv/www/mw/index.php
<Directory /srv/www/mw>
  Options All
  AllowOverRide All
  Order Allow,Deny
  Allow from All
</Directory>

kusjuures MediaWiki seadistusfailis LocalSettings.php tuleb kasutada muu hulgas selliseid ridu

$wgScriptPath        = "/mw";
$wgScriptExtension   = ".php";
$wgArticlePath       = "/wiki/$1";
$wgUsePathInfo       = true;

MediaWiki rakendus

Esmalt tuleb kopeerida http://www.mediawiki.org/ aadressilt soovitavalt viimase stabiilse MediaWiki tarkvara versioon ning pakkida lahti veebijuurika kataloogi

# cd /srv/www
# tar zxf mediawiki.tar.gz
# chown -R www-data:www-data mw-1.9.6

Seejärel avada vastav lehekülg brauseris nt http://x.x.x.x/ ja läbida installeri dialoogid. Paigaldamise lõpus öeldakse kokkuvõttes õnnestumise või ebaõnnestumise kohta. Peale brauseriga töötamist tuleb kopeerida LocalSettings.php seadistusfaili rakenduse juurkataloogi ning kohendada failisüsteemi omanik:grupp väärtused.

MediaWiki seadistamine

Ligipääsuprivileegide kehtestamine

Selleks, et veebiliidese kaudu ei saaks wikisse kasutajaid tekitada sobib kasutada seadistusfailis LocalSettings.php ridu

$wgGroupPermissions['*']['edit'] = false;
$wgGroupPermissions['*']['createaccount'] = false;

MediaWiki kasutamine

TODO

Erileheküljed

Nn Erilehekülgede sektsioonis on mitmed halduseks või wikis toimuvast ülevaate saamiseks vajalikud leheküljed, nt

  • Kõik leheküljed
  • Piltide loend
  • Kasutajad
  • Lehekülgede eksport/import
  • Versioon

Tekstide importimine

MediaWiki teksti importimiseks saab kasutada MediaWikist eksporditud tekste.

Failide üleslaadimine

Vaikimisi ei saa wikisse faile üles laadida, üleslaadimise lubamiseks tuleb kasutada LocalSetting.php failis nt ridu

$wgEnableUploads = true;
$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'patch', 'txt', 'log' );

Massiliseks failide mitte-interaktiivseks wikisse laadimiseks sobib kasutada skripti maintenance/importImages.php, nt

$ php5 importImages.php --user=priit /tmp/pildid --overwrite --comment='Priidu kopeeritud'

kus

  • --user=priit - kasutaja kellena näidatakse, et andmed wikisse kopeeriti

Seejuures tuleb arvestada, et nii üleslaaditud failid on failisüsteemis selle kasutaja:grupiga, millena skripti käivitati.

MediaWiki tarkvara uuendamine

Olemasoleva tarkvara versiooni saab küsida

Erileheküljed -> Versioon

MediaWiki uuendamist kirjeldatakse aadressil https://www.mediawiki.org/wiki/Manual:Upgrading. MediaWiki uuendamiseks on kaks erinevat võimalust

  • tekitada uuemast versioonist uus puhas paigaldus (failisüsteemi ja andmebaasi osas) ning laadida artiklite .xml dump sisse (lisaks pildid)
  • uuendada olemasolevat failisüsteemi ning rakendada skriptiga andmebaasimuudatused

Teise variandi puhul on veel omakorda mitmeid võimalusi, nt

  • kopeerida olemasolev failisüsteemi osa üle uuema sisuga
  • rakendada olemasolevale failisüsteemi osale patch abil muudatused (võimalik vaid minor uuenduste puhul, nt 1.20.2 -> 1.20.3)

Failisüsteemi osa paikamine uue tar.gz arhiivi olemasoleva kõrvale lahtipakkimise teel

v. 1.27.1 uuendamise juhend õpetab, et uue versiooni .tar.gz tuleb lahti pakkida tühja kataloogi ning seejärel

  • pg_dump ja pg_restore abil migreerida vajadusel baas uuele baasi mootorile
  • kopeerida vanast LocalSettings.php (maksab jälgida mis on muutunud, kuigi tundub, et mitte midagi märkimisväärset nt v. 1.21.x -> 1.27.1 uuendamisel)
  • extensions ja skins alla kopeerida vajalike asjade uus versioon isandate käest
  • uuendada baas
$ cd maintenance
$ php update.php
  • kohendada failisüsteemis failide omanikud

Failisüsteemi osa paikamine uue tar.gz arhiivi üle olemasoleva lahtipakkimise teel

Sellised sammud sobivad sama major versiooni uuendamiseks, nt 1.16.0 -> 1.16.5

  • Lõpetada kasutajate ligipääs veebikohale.
  • Teha varukoopia andmebaasist ja veebiserveris olevatest andmetest.
  • Pakkida lahti uue versiooni arhiiv vana peale, failid asendatakse
$ tar zxf /opt/postgres/20110506/mediawiki-1.16.5.tar.gz -C /srv/www/html/wiki/ --strip-components=1

Failisüsteem osa paikamine uue versiooni patch'iga paikamise teel

# patch -p1 --dry-run < ../../private/mediawiki-1.18.4.patch 
patching file includes/DefaultSettings.php
patching file includes/SkinTemplate.php
patching file includes/upload/UploadBase.php
patching file languages/Language.php
patching file RELEASE-NOTES-1.18

Kui probleeme pole, siis rakendada muudatused

# patch -p1 < ../../private/mediawiki-1.18.4.patch 

Andmebaasi uuendamine

  • Rakendada andmebaasi-uuendused
$ cd maintenance
$ update.php 
MediaWiki 1.16.5 Updater

Going to run database updates for qt
Depending on the size of your database this may take a while!
Abort with control-c in the next five seconds (skip this countdown with --quick) ... 0
... search_path for user "qt" looks correct (mediawiki, public)
Setting client_min_messages to 'error' for user "qt"
Setting DateStyle to 'ISO, YMD' for user "qt"
... default value of "TimeZone" is correctly set to "GMT" for user "qt"
... sequences already updated
... sequences already updated
... table "category" already exists
... table "mediawiki_version" already exists
... table "mwuser" already exists
...

MediaWiki tarkvara uuendamine 20200114 v. 1.27.3 - 1.34.0

Uuendamine

  • operatsioonisüsteem - debian v. 9 -> debian v. 10
  • postgresql v. 9.6 -> v. 12
postgres@db-4:~/20200112$ pg_dumpall > pg_dumpall-20200114.sql

Uuendamine toimub üldiselt tavalisel viisil, aga selliste erisustega

  • tekitada wikisse kasutajad kõigile artiklite autoritele
  • kohendada sql sisu vajadusel

Export ja Import

$ php dumpBackup.php --full > mw-1.16.5-dumpBackup.xml
2012-01-29 19:26:41: qt 3 pages (0.024/sec), 100 revs (0.795/sec), ETA 2012-01-29 23:05:39 [max 10542]
2012-01-29 19:26:41: qt 6 pages (0.048/sec), 200 revs (1.588/sec), ETA 2012-01-29 21:15:14 [max 10542]
2012-01-29 19:26:42: qt 18 pages (0.142/sec), 300 revs (2.365/sec), ETA 2012-01-29 20:38:52 [max 10542]
...
$ php importDump.php mw-1.16.5-dumpBackup.xml

Pildid tuleb lisada käsitsi

  • kopeerida images kataloogis ühte kataloogi pildid kokku
  • öelda
$ cd maintenance
$ php importImages.php --user=Priit /tmp/pildid --overwrite --comment='Priidu kopeeritud'

Varundamine ja taaste

MediaWiki varundamiseks tuleb pöörata tähelepanu sellistele andmetele

  • andmebaasi mediawiki skeem, kuhu on salvestatud wiki artiklite tekstid
  • veebijuurika failisüsteem, kus on PHP mootor + üles laaditud failid
  • lisaks peaks olema teada süsteemi parameetrid, nt andmebaasi kodeering, veebiserver seadistused jms

Skin kasutamine

Skin abil saab kontrollida Mediawiki väljanägemist, sh kuidas ta paistab nutiseadmel. Kasutamiseks tuleb skin kopeerida ja pakkida lahti alamkataloogi skins.

MediaWiki nutitelefonile

Kuna nutitelefoni ja tahvelarvuti ekraan on töökohaarvuti omast reeglina oluliselt pisem (nt vastavalt 5" ja 10" diagonaal), annab teksti esitamisel parema tulemuse väiksemale erkaanile paremini sobiv vormindus. Üks otsekohene viis seda korraldada on kasutada väiksema ekraani jaoks ettevalmistatud MediaWiki skin'i, nt http://www.mediawiki.org/wiki/Manual:Gallery_of_user_styles#WPtouch. Kasutamiseks tuleb

  • pakkida WPtouch arhiiv lahti MediaWiki rakenduse kataloogi alamkataloogis
skins/
  • asendada seadistusfailis LocalSettings.php rida (või sarnane)
$wgDefaultSkin = "monobook";

nt lõiguga

if (preg_match("/(mobile|webos|opera mini)/i", $_SERVER['HTTP_USER_AGENT'])) {
  $wgDefaultSkin = 'wptouch';
} else {
  $wgDefaultSkin = 'monobook';
}

Extension kasutamine

Extensions abil laiendatakse Mediawiki funktsionaalsust. Extension juurutamiseks tuleb vastav .tgz fail alla laadida ning pakkida lahti alamkataloogi extensions

# ls -ld mw-1.9.3/extensions/*
drwxr-xr-x  4 501 staff 4096 Aug 22 23:53 mw-1.9.3/extensions/Cite
drwxr-xr-x  4 501 staff 4096 Aug 22 23:53 mw-1.9.3/extensions/CiteThisPage
drwxr-xr-x 12 501 staff 4096 Aug 22 23:53 mw-1.9.3/extensions/ConfirmEdit
drwxr-xr-x  6 501 staff 4096 Aug 22 23:53 mw-1.9.3/extensions/Gadgets
drwxr-xr-x  4 998   998 4096 Jun 14 02:13 mw-1.9.3/extensions/googleAnalytics
...

Google Analytics

GA extension asub aadressil https://www.mediawiki.org/wiki/Extension:Google_Analytics_Integration ja vastav sektsioon LocalSettings.php faili on nt

require_once "$IP/extensions/googleAnalytics/googleAnalytics.php";
// Replace xxxxxxx-x with YOUR GoogleAnalytics UA number
$wgGoogleAnalyticsAccount = "UA-xxx-1"; 
// Optional Variables (both default to true)
$wgGoogleAnalyticsAnonymizeIP = false;
// $wgGoogleAnalyticsIgnoreSysops = false;
// $wgGoogleAnalyticsIgnoreBots = false;
// If you use AdSense as well and have linked your accounts, set this to true to enable tracking
// $wgGoogleAnalyticsAddASAC = false;

kus

  • TODO

SSL offload

Tundub, et MediaWiki töötab üsna hästi SSL offload taga, nt NginX puhul. Selleks tuleb

  • LocalSetting failis kasutada vastavat rida, nt
## The protocol and server name to use in fully-qualified URLs
$wgServer           = "https://www.auul.pri.ee";
  • Apache seadistusfailis rida
SetEnv HTTPS on

Kasulikud lisamaterjalid