MediaWiki konfigurieren: Unterschied zwischen den Versionen
Matt (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Matt (Diskussion | Beiträge) |
||
(29 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Installation MediaWiki siehe [[MediaWiki installieren (Debian)]] | Installation MediaWiki siehe [[MediaWiki installieren (Debian)]] | ||
==Einrichtung von ShortURLs== | ==Einrichtung von ShortURLs== | ||
Gut funktionierender '''MediaWiki Short-URL Builder''' siehe [http://shorturls.redwerks.org/ shorturls.redworks.org]. | Gut funktionierender '''MediaWiki Short-URL Builder''' siehe [http://shorturls.redwerks.org/ shorturls.redworks.org]. | ||
Zeile 11: | Zeile 12: | ||
'''Manuelle Einrichtung''' | '''Manuelle Einrichtung''' | ||
Anpassungen an .htaccess (für das Root-Verzeichnis des Webservers): | Anpassungen an .htaccess (für das Root-Verzeichnis des Webservers) (veraltet): | ||
Anpassungen an Site-Config-Datei (höhere Sicherheit): | |||
<syntaxhighlight lang="apache"> | <syntaxhighlight lang="apache"> | ||
RewriteEngine On RewriteRule ^/?wiki(/.*)?$ %{DOCUMENT_ROOT}/w/index.php [L] RewriteRule ^/?$ %{DOCUMENT_ROOT}/w/index.php [L] | RewriteEngine On | ||
RewriteRule ^/?wiki(/.*)?$ %{DOCUMENT_ROOT}/w/index.php [L] | |||
RewriteRule ^/?$ %{DOCUMENT_ROOT}/w/index.php [L] | |||
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d RewriteRule ^/?w/images/thumb/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/w/thumb.php?f=$1&width=$2 [L,QSA,B] | RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f | ||
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d | |||
RewriteRule ^/?w/images/thumb/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/w/thumb.php?f=$1&width=$2 [L,QSA,B] | |||
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d RewriteRule ^/?w/images/thumb/archive/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/w/thumb.php?f=$1&width=$2&archived=1 [L,QSA,B] | RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f | ||
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d | |||
RewriteRule ^/?w/images/thumb/archive/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/w/thumb.php?f=$1&width=$2&archived=1 [L,QSA,B] | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Zeile 31: | Zeile 40: | ||
==Logo und Theme anpassen== | ==Logo und Theme anpassen== | ||
Logo | Logo sollte von der Größe her an Skin angepasst sein. Default: 135x135 px, Vector 160x160px? | ||
Logodatei hochladen, z.B. nach <code>wiki/skins/logo.png</code> | |||
LocalSettings.php erweitern: | |||
$wgLogo = "$wgStylePath/logo.png"; | |||
An der Stelle nochmal prüfen, womit <code>$wgStylePath</code> genau gefüllt ist. | |||
== Navigation == | == Navigation == | ||
Startseite definieren: In [[MediaWiki:Mainpage]] die neue Startseite eintragen. | Startseite definieren: In [[MediaWiki:Mainpage]] die neue Startseite eintragen. | ||
Zeile 44: | Zeile 60: | ||
* Letzte Änderung: [[MediaWiki:Lastmodifiedat]] | * Letzte Änderung: [[MediaWiki:Lastmodifiedat]] | ||
* Anzahl Seitenabrufe: [[MediaWiki:Viewcount]] | * Anzahl Seitenabrufe: [[MediaWiki:Viewcount]] | ||
== Visual Editor == | |||
=== Voraussetzungen === | |||
* Diverse Standardpakete für PHP u. ä. | |||
* Node.JS | |||
* Parsoid | |||
* MediaWiki-Plugin Visual Editor | |||
=== Installation Note.JS und übrige Standardpakete === | |||
# apt-get install nodejs | |||
# apt-get install php-curl php-fpm | |||
=== Installation Parsoid === | |||
'''Anleitung:''' https://www.mediawiki.org/wiki/Parsoid/Setup#Ubuntu_.2F_Debian | |||
Paketquellen um Repository für Parsoid erweitern. Zunächst Repository-Key hinzufügen: | |||
# apt-key advanced --keyserver keys.gnupg.net --recv-keys 90E9F83F22250DD7 | |||
Anschließend Datei unter <code>/etc/apt/sources.list.d/</code> anlegen mit folgendem Inhalt: | |||
deb https://releases.wikimedia.org/debian jessie-mediawiki main | |||
'''Tipps zur Fehlerbehebung:''' https://www.mediawiki.org/wiki/Parsoid/Troubleshooting | |||
=== Installation Visual Editor === | |||
Konfiguration von MediaWiki anpassen durch aktivieren der Extension: | |||
# nano /var/www/w/LocalSettings.php | |||
Inhalt: | |||
require_once "$IP/extensions/VisualEditor/VisualEditor.php"; | |||
// Enable by default for everybody | |||
$wgDefaultUserOptions['visualeditor-enable'] = 1; | |||
// Don't allow users to disable it | |||
$wgHiddenPrefs[] = 'visualeditor-enable'; | |||
// OPTIONAL: Enable VisualEditor's experimental code features | |||
#$wgDefaultUserOptions['visualeditor-enable-experimental'] = 1; | |||
$wgVirtualRestConfig['modules']['parsoid'] = array( | |||
// URL to the Parsoid instance | |||
// Use port 8142 if you use the Debian package | |||
'url' => 'http://localhost:8142' # Hier kann der Localhost verwendet werden | |||
// Parsoid "domain", see below (optional) | |||
// 'domain' => 'localhost', | |||
// Parsoid "prefix", see below (optional) | |||
// 'prefix' => 'localhost' | |||
); | |||
Konfiguration des Parsoid-Service: | |||
# nano /etc/mediawiki/parsoid/settings.js | |||
Inhalt: | |||
'use strict'; | |||
exports.setup = function(parsoidConfig) { | |||
parsoidConfig.setMwApi({ uri: 'https://domain.tld/w/api.php'}); # Hier muss eine von außen erreichbare Adresse stehen | |||
parsoidConfig.useSelser = true; | |||
}; | |||
== Performance == | == Performance == | ||
=== Counter deaktivieren === | === Counter deaktivieren === | ||
'''MediaWiki ≤ 1.25''' | |||
nano /var/www/wiki/LocalSettings.php | nano /var/www/wiki/LocalSettings.php | ||
Am Ende folgende Zeile hinzufügen: | Am Ende folgende Zeile hinzufügen: | ||
Zeile 64: | Zeile 150: | ||
$wgFileCacheDirectory = "$IP/filecache"; | $wgFileCacheDirectory = "$IP/filecache"; | ||
$wgShowIPinHeader = false; | $wgShowIPinHeader = false; | ||
=== HTML-Cache aktualisieren === | |||
Wenn z. B. Kategorienseiten für nicht eingeloggte User nicht alle Inhalte enthalten, dann kann es sein, dass der User eine Kategorienseite mit altem Inhalt aus dem HTML-Cache erhält. | |||
Um diese zu aktualisieren, kann man z. B. im MediaWiki-Unterverzeichnis "filecache" die zugehörigen HTML-Dateien entfernen. | |||
== Syntaxhighlighting aktivieren == | == Syntaxhighlighting aktivieren == | ||
Folgende Zeile am Ende in LocalSettings.php einfügen: | Folgende Zeile am Ende in LocalSettings.php einfügen: | ||
'''MediaWiki ≤ 1.24'''<syntaxhighlight lang=" | '''MediaWiki ≤ 1.24''' | ||
<syntaxhighlight lang="php"> | |||
require_once "$IP/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php"; | require_once "$IP/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php"; | ||
</syntaxhighlight>'''MediaWiki ≥ 1.25'''<syntaxhighlight lang=" | </syntaxhighlight> | ||
'''MediaWiki ≥ 1.25''' | |||
<syntaxhighlight lang="php"> | |||
wfLoadExtension( 'SyntaxHighlight_GeSHi' ); | wfLoadExtension( 'SyntaxHighlight_GeSHi' ); | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Backups erstellen == | |||
=== SQL-Dump der Datenbank === | |||
Vgl. [[MariaDB (Debian)]] | |||
=== XML-Dump der Seiten === | |||
<syntaxhighlight lang="bash"> | |||
sudo -u www-data php dumpBackup.php --full > /var/backups/<dumpfilename>.xml | |||
</syntaxhighlight> | |||
== Links in Kategorien-Seiten aktualisieren == | |||
Wenn Links in Kategorien-Seiten nicht aktuell sind, können diese mit einem Maintenance-Skript aktualisiert werden: | |||
php maintenance/refreshLinks.php [starting_article] | |||
Für nicht eingeloggte User kann es sein, dass dies nicht ausreicht, wenn ein HTML-Cache genutzt wird. | |||
In diesem Falle kann es passieren, dass der User eine Kategorien-Seite mit altem Inhalt aus dem HTML-Cache erhält. | |||
Korrektur vgl. Abschnitt [[MediaWiki konfigurieren#HTML-Cache aktualisieren|HTML-Cache aktualisieren]]. | |||
# find -iname '*kategorie*' -exec rm {} + | |||
== Erweiterung Kategorienbaum == | |||
https://www.mediawiki.org/wiki/Extension:CategoryTree | |||
== Bilduploads ermöglichen == | |||
=== Voraussetzungen === | |||
Das Paket ImageMagic muss installiert sein: | |||
# apt-get install imagemagick | |||
=== Konfiguration === | |||
Es muss im MediaWiki-Verzeichnis ein Unterverzeichnis "images" geben, auf welches der Webserver (z. B. Account www-data) Schreibzugriff hat. | |||
Anpassungen der LocalSettings.php: | |||
## To enable image uploads, make sure the 'images' directory | |||
## is writable, then set this to true: | |||
$wgEnableUploads = true; | |||
$wgUseImageMagick = true; | |||
$wgImageMagickConvertCommand = "/usr/bin/convert"; | |||
$wgGenerateThumbnailOnParse = true; | |||
== Upload Dateigröße == | |||
Die Upload-Dateigröße wird primär durch <code>/etc/php/version/apache2/php.ini</code> festgelegt. | |||
post_max_size = 8M | |||
upload_max_filesize = 2M | |||
Um dies z. B. auf 8 MB zu erhöhen wird am besten eine neue Config-Datei abgelegt unter <code>/etc/php/version/apache2/conf.d/99-myconfig.ini</code> mit folgendem Inhalt: | |||
upload_max_filesize = 8M | |||
Die o.g. Dateispeicherorte sind Debianspezifisch. | |||
[[Category:Linux]] | |||
[[Kategorie:MediaWiki]] |
Aktuelle Version vom 4. September 2022, 14:24 Uhr
Installation MediaWiki siehe MediaWiki installieren (Debian)
Einrichtung von ShortURLs
Gut funktionierender MediaWiki Short-URL Builder siehe shorturls.redworks.org.
Grundlagen
Typischerweise werden ShortURLs für die URL http://www.domain.tld/wiki verwendet.
mediaWiki wird typischerweise in http://www.domain.tld/w (bzw. /var/www/w/) installiert.
Manuelle Einrichtung
Anpassungen an .htaccess (für das Root-Verzeichnis des Webservers) (veraltet):
Anpassungen an Site-Config-Datei (höhere Sicherheit):
RewriteEngine On
RewriteRule ^/?wiki(/.*)?$ %{DOCUMENT_ROOT}/w/index.php [L]
RewriteRule ^/?$ %{DOCUMENT_ROOT}/w/index.php [L]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
RewriteRule ^/?w/images/thumb/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/w/thumb.php?f=$1&width=$2 [L,QSA,B]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
RewriteRule ^/?w/images/thumb/archive/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/w/thumb.php?f=$1&width=$2&archived=1 [L,QSA,B]
Anpassungen in der LocalSettings.php:
$wgScriptPath = "/w";
$wgScriptExtension = ".php";
$wgArticlePath = "/wiki/$1";
$wgEnableUploads = true;
$wgGenerateThumbnailOnParse = false;
Logo und Theme anpassen
Logo sollte von der Größe her an Skin angepasst sein. Default: 135x135 px, Vector 160x160px?
Logodatei hochladen, z.B. nach wiki/skins/logo.png
LocalSettings.php erweitern:
$wgLogo = "$wgStylePath/logo.png";
An der Stelle nochmal prüfen, womit $wgStylePath
genau gefüllt ist.
Startseite definieren: In MediaWiki:Mainpage die neue Startseite eintragen.
Navigationsleiste anpassen: MediaWiki:Sidebar
Links auf Datenschutz und Impressum aus dem Footer-Bereich entfernen:
In den Seiten MediaWiki:Privacy und MediaWiki:Disclaimer nur einen Bindestrich "-" eintragen.
Texte im Footer anpassen:
- Letzte Änderung: MediaWiki:Lastmodifiedat
- Anzahl Seitenabrufe: MediaWiki:Viewcount
Visual Editor
Voraussetzungen
- Diverse Standardpakete für PHP u. ä.
- Node.JS
- Parsoid
- MediaWiki-Plugin Visual Editor
Installation Note.JS und übrige Standardpakete
# apt-get install nodejs # apt-get install php-curl php-fpm
Installation Parsoid
Anleitung: https://www.mediawiki.org/wiki/Parsoid/Setup#Ubuntu_.2F_Debian
Paketquellen um Repository für Parsoid erweitern. Zunächst Repository-Key hinzufügen:
# apt-key advanced --keyserver keys.gnupg.net --recv-keys 90E9F83F22250DD7
Anschließend Datei unter /etc/apt/sources.list.d/
anlegen mit folgendem Inhalt:
deb https://releases.wikimedia.org/debian jessie-mediawiki main
Tipps zur Fehlerbehebung: https://www.mediawiki.org/wiki/Parsoid/Troubleshooting
Installation Visual Editor
Konfiguration von MediaWiki anpassen durch aktivieren der Extension:
# nano /var/www/w/LocalSettings.php
Inhalt:
require_once "$IP/extensions/VisualEditor/VisualEditor.php"; // Enable by default for everybody $wgDefaultUserOptions['visualeditor-enable'] = 1; // Don't allow users to disable it $wgHiddenPrefs[] = 'visualeditor-enable'; // OPTIONAL: Enable VisualEditor's experimental code features #$wgDefaultUserOptions['visualeditor-enable-experimental'] = 1; $wgVirtualRestConfig['modules']['parsoid'] = array( // URL to the Parsoid instance // Use port 8142 if you use the Debian package 'url' => 'http://localhost:8142' # Hier kann der Localhost verwendet werden // Parsoid "domain", see below (optional) // 'domain' => 'localhost', // Parsoid "prefix", see below (optional) // 'prefix' => 'localhost' );
Konfiguration des Parsoid-Service:
# nano /etc/mediawiki/parsoid/settings.js
Inhalt:
'use strict'; exports.setup = function(parsoidConfig) { parsoidConfig.setMwApi({ uri: 'https://domain.tld/w/api.php'}); # Hier muss eine von außen erreichbare Adresse stehen parsoidConfig.useSelser = true; };
Performance
Counter deaktivieren
MediaWiki ≤ 1.25
nano /var/www/wiki/LocalSettings.php
Am Ende folgende Zeile hinzufügen:
$wgDisableCounters = true;
HTML-Cache aktivieren
Erstellt statische HTML-Dateien für Wiki-Seiten.
Dabei findet Caching von HTML-Seiten jedoch nur für nicht eingeloggte User statt.
File-Caching akivieren (Erstellung von statischen HTML-Dateien):
- Neues MediaWiki-Unterverzeichnis, z. B. "filecache" anlegen (Directory-Owner: www-data).
- LocalSettings.php erweitern um:
$wgUseFileCache = true; $wgFileCacheDirectory = "$IP/filecache"; $wgShowIPinHeader = false;
HTML-Cache aktualisieren
Wenn z. B. Kategorienseiten für nicht eingeloggte User nicht alle Inhalte enthalten, dann kann es sein, dass der User eine Kategorienseite mit altem Inhalt aus dem HTML-Cache erhält.
Um diese zu aktualisieren, kann man z. B. im MediaWiki-Unterverzeichnis "filecache" die zugehörigen HTML-Dateien entfernen.
Syntaxhighlighting aktivieren
Folgende Zeile am Ende in LocalSettings.php einfügen:
MediaWiki ≤ 1.24
require_once "$IP/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php";
MediaWiki ≥ 1.25
wfLoadExtension( 'SyntaxHighlight_GeSHi' );
Backups erstellen
SQL-Dump der Datenbank
Vgl. MariaDB (Debian)
XML-Dump der Seiten
sudo -u www-data php dumpBackup.php --full > /var/backups/<dumpfilename>.xml
Links in Kategorien-Seiten aktualisieren
Wenn Links in Kategorien-Seiten nicht aktuell sind, können diese mit einem Maintenance-Skript aktualisiert werden:
php maintenance/refreshLinks.php [starting_article]
Für nicht eingeloggte User kann es sein, dass dies nicht ausreicht, wenn ein HTML-Cache genutzt wird.
In diesem Falle kann es passieren, dass der User eine Kategorien-Seite mit altem Inhalt aus dem HTML-Cache erhält.
Korrektur vgl. Abschnitt HTML-Cache aktualisieren.
# find -iname '*kategorie*' -exec rm {} +
Erweiterung Kategorienbaum
https://www.mediawiki.org/wiki/Extension:CategoryTree
Bilduploads ermöglichen
Voraussetzungen
Das Paket ImageMagic muss installiert sein:
# apt-get install imagemagick
Konfiguration
Es muss im MediaWiki-Verzeichnis ein Unterverzeichnis "images" geben, auf welches der Webserver (z. B. Account www-data) Schreibzugriff hat.
Anpassungen der LocalSettings.php:
## To enable image uploads, make sure the 'images' directory ## is writable, then set this to true: $wgEnableUploads = true; $wgUseImageMagick = true; $wgImageMagickConvertCommand = "/usr/bin/convert"; $wgGenerateThumbnailOnParse = true;
Upload Dateigröße
Die Upload-Dateigröße wird primär durch /etc/php/version/apache2/php.ini
festgelegt.
post_max_size = 8M upload_max_filesize = 2M
Um dies z. B. auf 8 MB zu erhöhen wird am besten eine neue Config-Datei abgelegt unter /etc/php/version/apache2/conf.d/99-myconfig.ini
mit folgendem Inhalt:
upload_max_filesize = 8M
Die o.g. Dateispeicherorte sind Debianspezifisch.