MediaWiki/Configurazione

Wikibooks, manuali e libri di testo liberi.

Indice

[modifica] Configurare MediaWiki

La parte più lunga della creazione di un wiki è la sua configurazione. In questo documento si affrontano le problematiche più comuni. Si vedano anche le FAQ di MediaWiki. Si tenga presente che i file e i percorsi indicati sono soltanto di esempio.

[modifica] Messaggi di sistema

Nonostante la procedura di installazione permetta di selezionare la lingua dell'interfaccia predefinita, è necessario personalizzare i messaggi di sistema, in modo da tradurre le parti rimaste in inglese ed eliminare i riferimenti a Wikipedia. La pagina Special:Allmessages mostra tutti i messaggi di sistema.

[modifica] Link brevi

Per fare in modo che gli URL del wiki cambino

  • da http://localhost/mediawiki/index.php/Pagina_principale
  • a http://localhost/wiki/Pagina_principale.

Nel file LocalSettings.php inserire:

$wgArticlePath = "/wiki/$1";

Nel file /etc/apache/httpd.conf, alla sezione alias, inserire:

Alias /wiki /var/www/htdocs/mediawiki/index.php
Alias /index.php /var/www/htdocs/mediawiki/index.php

Controllare che il modulo rewrite (mod_rewrite) sia caricato all'avvio di apache.

Riavviare il server web.

[modifica] Interlink

Per modificare il funzionamento degli interlink (ad esempio [[en:MediaWiki]] oppure [[meta:MediaWiki]]) bisogna agire sulla tabella interlinks nel database.

Ad esempio, per fare in modo che gli interlink "Wikipedia:" puntino a it.wiki (mentre l'impostazione predefinita punta en.wiki), è sufficiente il comando:

mysql> UPDATE interwiki SET iw_url="http://it.wikipedia.org/wiki/$1" WHERE iw_prefix="WikiPedia";

All'interno della cartella maintenance di Mediawiki, è presente un file che contiene gli interlink utilizzati dai progetti Wikimedia; per importarli nel proprio database, è sufficiente il comando

mysql> source /var/www/htdocs/mediawiki/maintenance/wikipedia-interwiki.sql

[modifica] Upload

$wgEnableUploads		= true;
$wgUseImageResize		= true;
# estensioni di file ammesse
$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'pdf', 'ogg',
                           'sxd', 'std', 'sxm', 'sxg', 'sxi', 'sti', 
                           'sxc', 'stc', 'sxw', 'stw',               # OpenOffice.org 1.0
                           'odt', 'ods', 'odp'                       # Open Document Format
                         );
# estensioni di file non ammesse
$wgFileBlacklist = array(
       'html', 'htm', 'js', 'jsb', 'php', 'phtml', 'php3', 'php4', 'phps', 'shtml', 'jhtml',
       'pl', 'py', 'cgi', 'exe', 'scr', 'dll', 'msi', 'vbs', 'bat', 'com', 'pif', 'cmd', 
       'vxd', 'cpl', 'doc', 'dot', 'xls', 'xlt', 'ppt', 'pps', 'pot', 'mp3', 'divx' );

[modifica] Permessi

Impedisce agli utenti non loggati di creare nuovi utenti (tra quelli loggati, di default soltanto i sysop possono creare nuovi utenti) (modificando LocalSettings.php)

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

Richiede login per editare (modificando LocalSettings.php)

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

Aggiunta di namespace (modificando LocalSettings.php)

$wgExtraNamespaces = array(100 => "Associazione", 101 => "Discussioni_associazione");

Restrizione del namespace ad un determinato privilegio (attenzione: leggi la documentazione!)

  • prima parte: patchare mediawiki
# cd mediawiki/
# wget bugzilla.wikimedia.org/attachment.cgi?id=1451&action=view -O rra-patch.txt
# patch -b -p1 < rra-patch.txt
  • seconda parte: cambiare LocalSettings.php
$wgRestrictedNamespaces = array(100 => "ns1", 101 => "ns2");
# aggiunta del gruppo soci con privilegi di accesso al namespace ristretto
$wgGroupPermissions['soci' ]['ns1']             = true;
$wgGroupPermissions['soci' ]['ns2']             = true;

[modifica] Aspetto del sito

Nuvola apps xmag.png Per approfondire, vedi la pagina MediaWiki/Hacking interfaccia.

Le skin si trovano nella cartella skins/ e quella predefinita è MonoBook. Per personalizzarla, è possibile modificare le voci MediaWiki:Monobook.css (fogli di stile) e MediaWiki:Monobook.js (javascript). Ogni utente potrà a sua volta personalizzare l'interfaccia di MediaWiki modificando le voci Utente:Foobar/Monobook.css e Utente:Foobar/Monobook.js.

Per alcuni esempi, vedi anche la rispettiva pagina su Meta e fi:Wikipedia:Summary.

Ad esempio, per attivare i bordi arrotondati nell'interfaccia di MediaWiki (funziona soltanto nei browser basati su gecko) basta inserire in MediaWiki:Monobook.css:

 #p-cactions ul li, #p-cactions ul li a {
   -moz-border-radius-topleft: 1em;
   -moz-border-radius-topright: 1em;
 }
 #content {
   -moz-border-radius-topleft: 1em;
   -moz-border-radius-bottomleft: 1em;
 }
 div.pBody {
   -moz-border-radius-topright: 1em;
   -moz-border-radius-bottomright: 1em;
 }

Per cambiare il logo in alto a sinistra:

# cp /.../Logo_del_sito.png /.../mediawiki/skins/common/images/.

Nel file LocalSettings.php inserire:

$wgLogo = '$wgStylePath/common/images/Logo_del_sito.png';

[modifica] Sintassi TeX

Prima di questa operazione, è necessario aver installato Ocaml, ImageMagick, LaTeX, GhostScript.

Nel file LocalSettings.php inserire:

$wgUseTeX = true;

Per installare la funzione:

# cd math/
# make

A operazione conclusa, un'espressione come a2 + b2 = c2 viene resa correttamente.

[modifica] installare Ocaml

Procurarsi il software da http://caml.inria.fr/

# cd
# tar -xjvf ocaml*.tar.bz2
# cd ocaml*
# ./configure
# make world
# make opt
# make install

[modifica] installare teTeX

Procurarsi il software da http://www.tug.org/tetex/ ...la versione 3 di teTeX richiede un download di circa 100 Mb, mentre il pacchetto precompilato per Slackware circa 50 (vedi "ricerca tarball" su http://www.slackit.org).

# installpkg tetex*.tgz
# cd /usr/local/bin
# ln -s /usr/share/texmf/bin/* .

Questa installazione funziona soltanto su GNU/Linux Slackware.

[modifica] Sottopagine nei namespace

Attiva sottopagine per alcuni namespace (modificando LocalSettings.php)

$wgNamespacesWithSubpages = array(
       100       => 1,
       101       => 1
);

[modifica] TimeZone

# modifica timezone per visualizzare ora italiana
$wgLocalTZoffset = 1;

[modifica] Patrolling

# disabilita il patrolling
$wgUseRCPatrol = false;

[modifica] Altri settaggi

# lunghezza minima delle password
$wgMinimalPasswordLength = 6;
# non visualizza l'IP del visitatore anonimo
$wgShowIPinHeader = 0;

Strumenti personali