Mediawiki: Unterschied zwischen den Versionen

aus www.kruedewagen.de, Homepage von Ralf und Judith Krüdewagen (Kruedewagen)
Zur Navigation springen Zur Suche springen
Zeile 153: Zeile 153:
 
User-Beiträge migrieren und User löschen:
 
User-Beiträge migrieren und User löschen:
 
*http://www.mediawiki.org/wiki/Extension:User_Merge_and_Delete
 
*http://www.mediawiki.org/wiki/Extension:User_Merge_and_Delete
 +
 +
=== Benachrichtiungen ===
 +
==== Echo (Notifications) ====
 +
*https://www.mediawiki.org/wiki/Extension:Echo
 +
*https://www.mediawiki.org/wiki/Echo_%28Notifications%29?uselang=de
 +
*https://de.wikipedia.org/wiki/Hilfe%3AEcho
  
 
=== Diverse ===
 
=== Diverse ===

Version vom 25. November 2013, 08:12 Uhr

Update komplett

Diese Anleitung beinhaltet nicht das Anfertigen einer Sicherungskopie der MySQL DB. Diese Kopie sollte aber i.d.R. immer durch ein tägliches Backup erfolgen, z.B. mittels rsnapshot. Alle Schritte müssen als root ausgeführt werden.

Backup der alten Umgebung

DIR=wiki
cd /srv/www/htdocs
rm -rf $DIR.old
cp -rp $DIR $DIR.old
chmod 700 $DIR.old

Neuen Tarball auspacken

tar zxvf /opt/pkg/mediawiki/mediawiki-1.16.1.tar.gz

Im Folgende ist NEWDIR das neue Verzeichnis (i.d.R. der Art mediawiki-1.16.1), in das das neue Release ausgepackt wurde, und wiki das Verzeichnis mit der alten Software.

Owner anpassen

NEWDIR=mediawiki-1.16.1
chown -R root:root $NEWDIR

Images kopieren

cd $NEWDIR
cp -rp ../$DIR/images .

Extensions kopieren

mv extensions extensions.orig
cp -rp ../$DIR/extensions .
cp -rp extensions.orig/* extensions/
rm -rf extensions.orig

Achtung: Seit Version 1.18 wird MediaWiki mit einigen Extensions ausgeliefert. Diese Extensions sollten möglichst nicht mit denen aus dem alten Verzeichnis überschrieben werden.

LocalSettings.php kopieren

cp -p ../$DIR/LocalSettings.php* .

Optional: Logo und Favicon kopieren

cp -p ../$DIR/*logo.png .
cp -p ../$DIR/*logo.ico .

Optional: spezielle Skins kopieren

cp -rp ../$DIR/skins/bento* ./skins/

Upgrade

cd maintenance
php ./update.php

Note: Wenn dieser Befehl fehlschlägt oder keine Ausgabe erzeugt, könnte es ein Problem mit dem "PHP memory limit" geben oder mit dem Laden einer Extension. Bitte Logs prüfen (syslog). Diesen Schritt nicht überspringen!

Owner und Permissions

cd ..
chown wwwrun images

Web-Configuationsinterface deaktivieren

chmod 700 mw-config

Scharf schalten

cd ..
rm -rf $DIR
mv $NEWDIR $DIR

Update per Patch

Der Patch muss genau zur installierten Version passen. Alle Schritte müssen als root ausgeführt werden. Beispiel für Update von 1.19.0 nach 1.19.1.

Backup der alten Umgebung

DIR=wiki
cd /srv/www/htdocs
rm -rf $DIR.old
cp -rp $DIR $DIR.old
chmod 700 $DIR.old

Patch einspielen

cd $DIR
patch -p1 < /opt/pkg/mediawiki/mediawiki-1.19.1.patch

Upgrade

cd maintenance
php ./update.php

Namespaces

Extensions

Suche

Full-Text Suche:

RigorousSearch

Bei Tabellen vom InnoDB-Typ wird der Text als BLOB gespeichert. BLOB-Typen sind case sensitive (im Gegensatz zu TEXT). Daher findet in diesem Fall RigorousSearch nur Strings, die mit korrekter Groß-/Kleinschreibung angegeben wurden.

Änderung am Quellcode, um Suche case-insensitive zu machen (durch Einfügen einer CAST() Funktion):

$queryTxt = "SELECT old_text FROM " . $db->tableName('text') .
                    " WHERE old_id = " . $text_id .
                    " AND CAST(old_text as CHAR) LIKE '%" . $pattern . "%'";

Note: In MediaWiki 1.18 ist $wgMessageCache entfernt worden. Daher muss die $wgMessageCache Zuweisung in der Extension deaktiviert werden. Siehe auch [1].

Semantic MediaWiki (SMW)

Ausgabe formatieren:

Video

History und Revisionen löschen

  • Special:RevisionDelete
    • Seit Version 1.60 Bestandteil von Mediawiki.
    • Einzelne Revisionen können verborgen werden (zeige/verstecke).
    • Die Sichtbarkeit kann dabei für folgende Dinge eingeschränkt werden: Text, Bearbeitungskommentar, User.
    • Einschränkungen können wieder rückgängig gemacht werden.
    • Jede Revision muss damit einzeln bearbeitet werden.
  • Extension:SpecialDeleteOldRevisions2
    • Irreversibles Löschen von alten Revisionen
    • Anwendbar auf einzelne oder alle Seiten.
    • Wildcard-Support
    • Datum und Namensräume können angegeben werden.

Git

User

User-Beiträge migrieren und User löschen:

Benachrichtiungen

Echo (Notifications)

Diverse

Skins

Allgemeine Infos

bentofluid

  • Installationsort: ./skins/bento*
-rw-r--r-- 1 root root   418 25. Sep 14:47 bento.deps.php
-rw-r--r-- 1 root root   634 25. Sep 15:25 bentofluid.php
drwxr-xr-x 6 root root  4096 26. Sep 11:52 bento
-rw-r--r-- 1 root root 17339 26. Sep 13:52 bento.php
lrwxrwxrwx 1 root root     5  4. Jan 08:04 bentofluid -> bento
lrwxrwxrwx 1 root root    14  4. Jan 08:04 bentofluid.deps.php -> bento.deps.php
  • Meine Farbe: #265e15

Noch anpassen:

  • global-navigation (??)

Aktivierung eines Skins

Default-Skin ist einzustellen in LocalSettings.php:

 //$wgDefaultSkin = 'monobook';
 $wgDefaultSkin = 'bentofluid';
 $bento_lang = "de";

User-defined Skin unter Spezial:Einstellungen.

Tipps und Tricks

MemCache deaktivieren

Einstellung in LocalSettings.php:

// Problems with slow response due to MemCache problems
$wgMemCachedServers = array('');
$wgMessageCacheType = CACHE_NONE;
$wgParserCacheType = CACHE_NONE;

Bilder konvertieren

Falls es zu Fehlern kommt beim Erstellen von skalierten Bildern (vor allem wenn gleichzeitig mehrere Bilder verarbeitet werden), dann hilft folgende Einstellung in LocalSettings.php:

$wgImageMagickConvertCommand = "/usr/bin/convert";
## if convert does not work for multiple images on one go
$wgMaxShellMemory = 512000;

URL kürzen

LocalSettings.php:

$wgScriptPath = '/wiki';         # Path to the actual files, in subdirectory here!!
$wgArticlePath = '/wiki/$1';  # Virtual path. This directory SHOULD be different from the one used in $wgScriptPath
$wgUsePathInfo = true;        # Enable use of pretty URLs

Hinweise:

  • Normalerweise sollten $wgScriptPath und $wgArticlePath unterschiedlich sein, also nicht beide auf /wiki zeigen. Mit einem Trick beim Apache ReWrite geht es aber doch. Vorteile: $wgScriptPath kann auf wiki stehen bleiben, damit alle alte Links mit /wiki/index.php/ noch funktionieren. $wgArticlePath bleibt auf wiki, damit auch die neue URL als /wiki im Browser steht.

Apache:

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
RewriteRule ^/?wiki(/.*)?$ %{DOCUMENT_ROOT}/wiki/index.php [L]

Weblinks:

MIME Type Checks beim Datei-Upload

Die ZIP-basierten neuen MS Office Formate lassen sich nicht korrekt erkennen, sondern werden als (application/zip) erkannt. Abhilfe:

  • MIME Type Check deaktivieren durch $wgVerifyMimeType= false;.
  • Workaround implementieren, damit (application/zip) gültig wird (siehe unten).

Siehe auch:

Tools

Projekte

Wikidata

Literatur

Weblinks

Einzelnachweise