MediaWiki: Unterschied zwischen den Versionen
Codica (Diskussion | Beiträge) |
Codica (Diskussion | Beiträge) |
||
(46 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 14: | Zeile 14: | ||
* [http://www.mediawiki.org/wiki/Debian/Ubuntu die Anpassungen von MediaWiki an das Debian/Ubuntu-Universum] | * [http://www.mediawiki.org/wiki/Debian/Ubuntu die Anpassungen von MediaWiki an das Debian/Ubuntu-Universum] | ||
* [http://ubuntuguide.org/wiki/MediaWiki_tips MediaWiki-Tipps unter Ubunutu] | * [http://ubuntuguide.org/wiki/MediaWiki_tips MediaWiki-Tipps unter Ubunutu] | ||
+ | * [http://www.html-world.de/497/konfiguration-des-wiki-projektes/ Anleitung auf html-world] | ||
=== Installation des Packages === | === Installation des Packages === | ||
Zeile 28: | Zeile 29: | ||
http://localhost/mediawiki/mw-config/index.php | http://localhost/mediawiki/mw-config/index.php | ||
− | <code>localhost</code> ggf. durch den entfernten Server ersetzen. | + | <code>localhost</code> ggf. durch den entfernten Server ersetzen. Wenn die Erstellung der Datenbank nicht funktioniert, kann dies an einer Einschränkung des Zugriffs auf den MySQL/MariaDB-root-User liegen, vgl. [[MySQL#Nur-Root-Login]]. |
Die herunterzuladende <code>LocalSettings.php</code> in <code>/etc/mediawiki</code> abspeichern. | Die herunterzuladende <code>LocalSettings.php</code> in <code>/etc/mediawiki</code> abspeichern. | ||
Zeile 40: | Zeile 41: | ||
dpkg-reconfigure exim4-config | dpkg-reconfigure exim4-config | ||
− | === Hinzufügen von Google | + | === Privates Mediawiki === |
+ | |||
+ | Siehe http://theredpixel.co.uk/protecting-mediawiki/ | ||
+ | |||
+ | === Hinzufügen von Werbung === | ||
+ | ==== Google AdSense ==== | ||
* In der Datei <code>/var/lib/mediawiki1.7/skins/MonoBook.php</code> ist der [http://www.google.com/adsense Google-AdSense]-Code am Ende des <code><div></code>-Blocks mit der class "portlet" und der id "p-tb" einzufügen. | * In der Datei <code>/var/lib/mediawiki1.7/skins/MonoBook.php</code> ist der [http://www.google.com/adsense Google-AdSense]-Code am Ende des <code><div></code>-Blocks mit der class "portlet" und der id "p-tb" einzufügen. | ||
* Siehe auch [http://wiki.edsimpson.co.uk/index.php/Adding_AdSense_to_MediaWiki Editieren von monobook.php] | * Siehe auch [http://wiki.edsimpson.co.uk/index.php/Adding_AdSense_to_MediaWiki Editieren von monobook.php] | ||
* Achtung: Das Google AdSense-Programm sammelt im Rahmen von DoubleClick seit 2009 standardmäßig Informationen über die von den Nutzern der mit Google-Werbung angereicherten Webseiten besuchten Webseiten. Dies kann der Web-Betreiber aber in seinen AdSense-Kontoeinstellungen ausschalten (keine sog. Interessenbezogene Anzeigen). | * Achtung: Das Google AdSense-Programm sammelt im Rahmen von DoubleClick seit 2009 standardmäßig Informationen über die von den Nutzern der mit Google-Werbung angereicherten Webseiten besuchten Webseiten. Dies kann der Web-Betreiber aber in seinen AdSense-Kontoeinstellungen ausschalten (keine sog. Interessenbezogene Anzeigen). | ||
+ | ==== Andere Bannerwerbung ==== | ||
+ | Siehe z.B. | ||
+ | * https://partner.bitpalast.net/ | ||
=== Verschieben von LocalSettings.php === | === Verschieben von LocalSettings.php === | ||
Zeile 65: | Zeile 74: | ||
* Siehe http://www.mediawiki.org/wiki/Manual:Short_URL | * Siehe http://www.mediawiki.org/wiki/Manual:Short_URL | ||
+ | |||
+ | === Ändern der Email-Adresse eines Benutzers === | ||
+ | |||
+ | cd /usr/share/mediawiki | ||
+ | php maintenance/resetUserEmail.php --wiki $WIKI_ID "$user" "$email" | ||
=== Einrichten von weiteren InterWikis === | === Einrichten von weiteren InterWikis === | ||
Zeile 107: | Zeile 121: | ||
* [http://meta.wikimedia.org/wiki/Layout_customization Layout Customizing] | * [http://meta.wikimedia.org/wiki/Layout_customization Layout Customizing] | ||
− | == | + | == Markup-Konverter == |
Konverter des MediaWiki-Markups in HTML | Konverter des MediaWiki-Markups in HTML | ||
+ | * [http://techwiki.openstructs.org/index.php/Wiki_converters Übersicht über Wiki-Markup-Konverter] | ||
+ | * [http://www.mediawiki.org/wiki/Alternative_parsers Übersicht über Konverter und sonstige Markup-Parser] | ||
+ | * [http://stackoverflow.com/questions/9343931/convert-mediawiki-wikitext-format-to-html-using-command-line MediaWikis mitgelieferter Parser]: | ||
+ | php maintenance/parse.php --title xy | ||
* http://code.google.com/p/gwtwiki/ ([[Java]]-basierter Webservice) | * http://code.google.com/p/gwtwiki/ ([[Java]]-basierter Webservice) | ||
+ | ** http://code.google.com/p/gwtwiki/wiki/Mediawiki2HTML | ||
== Synchronisation mit einem Offline-MediaWiki == | == Synchronisation mit einem Offline-MediaWiki == | ||
Zeile 116: | Zeile 135: | ||
* Siehe [[Programmierprojekte#MediaWiki-Sync]] | * Siehe [[Programmierprojekte#MediaWiki-Sync]] | ||
+ | == Spezialfall: Wiki für private Gruppe == | ||
+ | Um ein privates Wiki anzulegen, das nur für eine bestimmte Gruppe einsehbar und editierbar ist, bieten sich folgende Schritte an. | ||
+ | |||
+ | === Domainregistrierung === | ||
+ | |||
+ | Eine Domainregistrierung ist optional. Der Betrieb eines MediaWikis bedarf keiner eigenen Domain, jedoch ist es auch für kleinere Gruppen meist vorteilhaft, mit einer Domain darauf zuzugreifen. | ||
+ | |||
+ | Siehe dazu [[Webhosting]] | ||
+ | |||
+ | === Einrichtung eines virtuellen Servers === | ||
+ | |||
+ | Auch ein (virtueller) Server im Netz ist nicht zwingend für MediaWiki erforderlich. Es reicht auch WebSpace mit | ||
+ | * MySQL | ||
+ | * PHP | ||
+ | * Apache | ||
+ | aus. | ||
+ | |||
+ | Allerdings bietet ein virtueller Server höhere Flexibilität, z.B. für Backup oder Email-Versand. | ||
+ | |||
+ | Zur Einrichtung siehe [[Webhosting]]. | ||
+ | |||
+ | === Installation eines Webservers === | ||
+ | |||
+ | Regelmäßig bietet sich der Standard-Webserver [[Apache]] an. | ||
+ | |||
+ | === Installation von MySQL === | ||
+ | |||
+ | [[MySQL]] wird zur Benutzung von MediaWiki benötigt. | ||
+ | |||
+ | === Installation von MediaWiki === | ||
+ | |||
+ | Installiert werden können entweder die herunterladbaren Original-[[PHP]]-Quelldateien oder aber die Installation des MediaWiki-Pakets. | ||
+ | |||
+ | === Konfiguration des MediaWiki === | ||
+ | Zur Einrichtung unter http://wiki.yourdomain.com/config/index.php siehe oben. | ||
+ | |||
+ | |||
+ | ==== Einstellen der Domain ==== | ||
+ | Das Wiki sollte (nur) auf Anfragen mit der Wiki-Domain Seiten darstellen. Das ist zur Abgrenzung weiterer Funktionen auf dem (virtuellen) Server unter anderer Domain notwendig. | ||
+ | |||
+ | ==== Erstellen von neuen Benutzern nur durch Admin ==== | ||
+ | |||
+ | ==== Verbot des Schreibens und Lesens für anonyme Benutzer ==== | ||
+ | |||
+ | Bei der Installation kann man angeben, dass man ein "geschlossenes Wiki" haben will. Dann können anonyme Benutzer weder schreiben noch lesen. Man kann sich auch nicht selbst als neuer Benutzer registrieren. | ||
+ | |||
+ | ==== Versenden von Mails ==== | ||
+ | |||
+ | MediaWiki benötigt für die Versendung von Mails entsprechende Einstellungen in der [http://php.net/manual/en/mail.configuration.php PHP-Email-Konfiguration]. | ||
+ | Wenn man [[Postfix]] eingerichtet hat und in der Shell das Verschicken von Emails mit <code>mail</code> ausprobiert hat, muss man noch dafür sorgen, dass von PHP aus man Mails verschicken kann: | ||
+ | sudo aptitude install php-mail php-mail-mime php-mail-mimedecode | ||
+ | |||
+ | |||
+ | Neben dem Einschalten von Mails (ebenfalls in der LocalSettings.php) ist noch in der LocalSettings.php folgende Einstellung vorzunehmen: | ||
+ | $wgPasswordSenderName = "Wiki Administrator"; | ||
+ | |||
+ | ==== Kurze URLs ==== | ||
+ | |||
+ | ===== Kurze URLs mit Apache ===== | ||
+ | Apache-Rewrite einrichten und in LocalSettings.php niederlegen, dass kurze URLs (example.com/Stichwort) als URL verwendet wird. | ||
+ | Dazu das Apache-Modul Rewrite aktivieren: | ||
+ | |||
+ | sudo a2enmod rewrite | ||
+ | |||
+ | Einrichten eines Apache-Virtual Hosts z.B. <code>/etc/apache2/sites-available/enebene</code> | ||
+ | |||
+ | <VirtualHost *> | ||
+ | ServerName www.enebene.de | ||
+ | ServerAdmin ebene@emailprovider.de | ||
+ | ServerAlias enebene.de | ||
+ | |||
+ | DocumentRoot /var/lib/mediawiki | ||
+ | |||
+ | AddType image/x-icon .ico | ||
+ | |||
+ | RewriteEngine on | ||
+ | |||
+ | # Short url for wiki pages | ||
+ | RewriteRule ^/?eb/?(.*)?$ %{DocumentRoot}/index.php?title=$1 [L] | ||
+ | |||
+ | <Directory /var/lib/mediawiki/> | ||
+ | Options +FollowSymLinks | ||
+ | AllowOverride All | ||
+ | order allow,deny | ||
+ | allow from all | ||
+ | </Directory> | ||
+ | |||
+ | # some directories must be protected | ||
+ | <Directory /var/lib/mediawiki/config> | ||
+ | Options -FollowSymLinks | ||
+ | AllowOverride None | ||
+ | </Directory> | ||
+ | <Directory /var/lib/mediawiki/upload> | ||
+ | Options -FollowSymLinks | ||
+ | AllowOverride None | ||
+ | </Directory> | ||
+ | </VirtualHost> | ||
+ | |||
+ | |||
+ | In <code>/etc/mediawiki/LocalSettings.php</code> noch folgende Zeile am Ende einfügen | ||
+ | $wgArticlePath="/eb/$1"; | ||
+ | |||
+ | Der Zugriff erfolgt dann über http://www.enebene.de/eb/Stichwort | ||
+ | Siehe auch http://www.mediawiki.org/wiki/Manual:Short_URL/Apache | ||
+ | |||
+ | ===== Kurze URLs mit NGINX ===== | ||
+ | |||
+ | Siehe für kurze MediaWiki-URLs mit [[NGINX]]: | ||
+ | |||
+ | * https://www.mediawiki.org/wiki/Manual:Short_URL/Page_title_-_nginx,_Root_Access,_PHP_as_a_CGI_module | ||
+ | * https://wiki.archlinux.org/index.php/MediaWiki#Nginx | ||
+ | * [https://shorturls.redwerks.org Short-URLs von Redwerks] - Service funktioniert nur mit öffentlich zugänglichen MediaWikis | ||
+ | |||
+ | ==== Home Page in Gruppenseite umbenennen ==== | ||
+ | |||
+ | ==== Logo hochladen ==== | ||
+ | |||
+ | ==== Datei-Upload erlauben ==== | ||
+ | |||
+ | ===== Anpassen php.ini ===== | ||
+ | Neben dem grundsätzlichen Erlauben des Hochladens von Dateien in PHP muss man noch die erlaubten Dateigrößen und -typen in <code>/etc/php/7.0/fpm/php.ini</code> oder <code>/etc/php5/apache2/php.ini</code> anpassen: | ||
+ | (Angaben in Megabyte) | ||
+ | post_max_size=8M | ||
+ | upload_max_filesize=2M | ||
+ | |||
+ | ===== Anpassen LocalSettings.php ===== | ||
+ | Am Ende von <code>/etc/mediawiki/LocalSettings.php</code> ist folgende Zeile anzufügen: | ||
+ | $wgEnableUploads = true; | ||
+ | |||
+ | In <code>LocalSettings.php</code> sollten die weiteren benötigten Dateitypen erlaubt werden:<ref>http://www.mediawiki.org/wiki/Manual:Configuring_file_uploads#Configuring_file_types</ref> | ||
+ | $wgFileExtensions = array_merge( $wgFileExtensions, | ||
+ | array( 'doc', 'xls', 'mpp', 'pdf', 'ppt', 'xlsx', 'jpg', | ||
+ | 'tiff', 'odt', 'odg', 'ods', 'odp' | ||
+ | ) | ||
+ | ); | ||
+ | |||
+ | ===== Mime-Typen ===== | ||
+ | In <code>/etc/mime.types</code> <small>(und nicht in <code>/usr/share/mediawiki/includes/mime.types</code>)</small> sollten noch beim Zip-Dateityp eine Ergänzung vorgenommen werden:<ref>Vgl. http://www.mediawiki.org/wiki/Manual:MIME_type_detection .</ref> | ||
+ | application/zip zip '''xlsx docx pptx''' | ||
+ | |||
+ | ===== Drag & Drop - File-Upload ===== | ||
+ | |||
+ | Die [http://www.mediawiki.org/wiki/Extension:MsUpload MediaWiki-Erweiterung MsUpload] unterstützt den Upload mehrerer Dateien gleichzeitig. Außerdem kann mittels HTML5 bzw. Flash die Dateien mit der Maus ins Bearbeiten-Fenster verschoben werden. | ||
+ | |||
+ | Zur Installation: | ||
+ | * Herunterladen der Erweiterung von http://www.ratin.de/msupload.html | ||
+ | wget http://www.ratin.de/wiki_ext/MsUpload_9.2.zip | ||
+ | * Entpacken der Erweiterung | ||
+ | unzip MsUpload_9.2.zip | ||
+ | * Ändern des Eigentümers und Verschieben nach mediawiki/extensions: | ||
+ | sudo chown -R www-data:www-data MsUpload | ||
+ | sudo mv MsUpload /var/lib/mediawiki/extensions/ | ||
+ | * Ergänzung der <code>/etc/mediawiki/LocalSettings.php</code> am Ende: | ||
+ | $wgMSU_ShowAutoKat = true; // autokategorisierung | ||
+ | $wgMSU_CheckedAutoKat = true; // checkbox: checked = true/false | ||
+ | $wgMSU_debug = false; | ||
+ | $wgMSU_ImgParams = "400px"; | ||
+ | $wgMSU_UseDragDrop = true; // show Drag&Drop Area? | ||
+ | require_once("$IP/extensions/MsUpload/msupload.php"); | ||
+ | |||
+ | * Installation der Bilderkonvertiersoftware: | ||
+ | sudo aptitude install graphicsmagick-imagemagick-compat | ||
+ | oder | ||
+ | sudo aptitude install imagemagick | ||
+ | |||
+ | ==== Spielwiese einrichten und Anleitung erstellen ==== | ||
+ | Eine Seite, die als Spielwiese/Sandkasten zum Ausprobieren dient, sollte eingerichtet werden. Außerdem bedarf es einer Kurz-Anleitung mit Links auf die Hilfen von Mediawiki | ||
+ | |||
+ | Dabei kann z.B. auch gezeigt werden, wie Tabellen aus [[OpenOffice]] nach MediaWiki exportiert werden können. Denn gerade zur Koordination von Gruppen werden häufig Tabellen verwendet, die bequemer in einem Office-Paket statt über die MediaWiki-Oberfläche erstellt werden können. | ||
+ | |||
+ | ==== Test von Benutzern ==== | ||
+ | |||
+ | Sowohl Editieren als auch Emailen von neuen Benutzern sollte mittels Test-Accounts getestet werden, bevor das Wiki offiziell eröffnet wird. | ||
+ | |||
+ | ==== Hauptseite umbenennen ==== | ||
+ | |||
+ | Die Hauptseite sollte einen schöneren Namen bekommen und entsprechend die Navigation angepasst werden. | ||
+ | |||
+ | |||
+ | ==== Einloginformation anpassen ==== | ||
+ | Sinnvoll erscheint es, die Anmelde-Seite, die einem nicht eingeloggten Benutzer gezeigt wird, noch so anzupassen, dass der neue Benutzer schon weiß, dass er auf der richtigen Seite gelandet ist. | ||
+ | |||
+ | ==== WYSIWYG-Editor ==== | ||
+ | Ein Editor sollte den Benutzern zur Verfügung gestellt werden, der ähnlich wie Office-Programme (mit Klicks/Tastenkürzel statt ausdrücklichem Markup) bedient werden kann. | ||
+ | |||
+ | Die mit MediaWiki jedenfalls ab 0.19 standardmäßig ausgelieferte [http://www.mediawiki.org/wiki/Extension:WikiEditor Erweiterung "WikiEditor"] ist ein Anfang. Diesen sollte man für alle Benutzer in der <code>/etc/mediawiki/LocalSettings.php</code> standardmäßig aktivieren: | ||
+ | # Enables use of WikiEditor by default but still allow users to disable it in preferences | ||
+ | $wgDefaultUserOptions['usebetatoolbar'] = 1; | ||
+ | $wgDefaultUserOptions['usebetatoolbar-cgd'] = 1; | ||
+ | |||
+ | # Displays the Preview and Changes tabs | ||
+ | $wgDefaultUserOptions['wikieditor-preview'] = 1; | ||
+ | |||
+ | # Displays the Publish and Cancel buttons on the top right side | ||
+ | $wgDefaultUserOptions['wikieditor-publish'] = 1; | ||
+ | |||
+ | ==== Umstellen auf SSL ==== | ||
+ | |||
+ | Jede Kommunikation im Netz sollte verschlüsselt erfolgen. Daher sollte auch auf ein privates Wiki mittels [[SSL]] (http'''s'''://...) zugegriffen werden. | ||
+ | Dazu wird ein SSL-Zertifikat für die eigene Domain benötigt. Dieses muss dann auch noch in Apache und MediaWiki eingerichtet werden. | ||
+ | |||
+ | ==== Sperren eines geblockten Benutzers ==== | ||
+ | |||
+ | Über die Sperren-Spezial-Seite kann ein Benutzer am Editieren gehindert werden. | ||
+ | |||
+ | Mit Hilfe von [https://www.mediawiki.org/wiki/Manual:$wgBlockDisablesLogin $wgBlockDisablesLogin = true;] in der LocalSettings.php kann man auch verhindern, dass der Benutzer sich noch zum Lesen einloggen kann. | ||
+ | |||
+ | == Troubleshooting == | ||
+ | |||
+ | === Thumbnails werden nicht angezeigt === | ||
+ | |||
+ | In einer deutschen MediaWiki-Installation kann es sein, dass bei Ausgabe des <code>srcset</code>-Attributs der Wert <code>1.5x</code> fälschlicherweise als <code>1,5</code> (mit Komma statt Punkt) ausgegeben wird. | ||
+ | |||
+ | Das kann durch Setzen von | ||
+ | setlocale(LC_NUMERIC, "C") | ||
+ | in <code>LocalSettings.php</code> verhindert werden.<ref>Siehe https://www.mediawiki.org/wiki/Topic:U4dj6u0g7zkvhijl</ref> | ||
+ | |||
+ | === Exception encountered, of type "ParseError" === | ||
+ | |||
+ | Der Fehler tritt beim Upgrade von MediaWiki auf Version 1:1.27.7-1~deb9u4 auf. Der Fehler | ||
+ | soll schnell bereinigt werden, siehe | ||
+ | https://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg1766603.html | ||
+ | |||
+ | Bis dahin hilft ein Downgrade auf die vorherige Version: | ||
+ | sudo aptitude install 'mediawiki=1:1.27.7-1~deb9u3' | ||
----- | ----- |
Aktuelle Version vom 30. Mai 2024, 08:22 Uhr
Allgemeines
MediaWiki ist die Wiki-Engine hinter codicatipps und wikipedia.de.
Tipps zur Bedienung
- Benutzerhandbuch für MediaWiki
- Die installierten Extensions sind auf der Seite Spezial:Version einsehbar.
- Zu Footnotes siehe die Mediawiki-Extension-Dokumentation
Installation unter Debian und Ubuntu
Siehe die
- Mediawiki-Installationsanleitung unter Debian.
- Installationsanleitung unter Ubuntu (deutsch / englisch)
- die Anpassungen von MediaWiki an das Debian/Ubuntu-Universum
- MediaWiki-Tipps unter Ubunutu
- Anleitung auf html-world
Installation des Packages
Unter Debian installiert man den MediaWiki-Code folgendermaßen:
apt-get install mediawiki
Erst-Konfiguration
In /etc/apache2/conf.d/mediawiki.conf die Zeile Alias /mediawiki /var/lib/mediawiki
ohne '#' schreiben.
Konfiguration unter
http://localhost/mediawiki/config/index.php
oder
http://localhost/mediawiki/mw-config/index.php
localhost
ggf. durch den entfernten Server ersetzen. Wenn die Erstellung der Datenbank nicht funktioniert, kann dies an einer Einschränkung des Zugriffs auf den MySQL/MariaDB-root-User liegen, vgl. MySQL#Nur-Root-Login.
Die herunterzuladende LocalSettings.php
in /etc/mediawiki
abspeichern.
Email-Bestätigung einschalten
/var/lib/mediawiki1.7/config/LocalSettings.php
ergänzen, damit nur nach Bestätigen der Email-Adresse Änderungen vorgenommen werden können:
$wgEmailConfirmToEdit=true;
Der Mail Transfer Agent des Linux-Systems muss dazu richtig konfiguriert sein. Unter Debian muss man sich dazu durch die Abfragen durchhangeln, die man bekommt, wenn man als root eingibt:
dpkg-reconfigure exim4-config
Privates Mediawiki
Siehe http://theredpixel.co.uk/protecting-mediawiki/
Hinzufügen von Werbung
Google AdSense
- In der Datei
/var/lib/mediawiki1.7/skins/MonoBook.php
ist der Google-AdSense-Code am Ende des<div>
-Blocks mit der class "portlet" und der id "p-tb" einzufügen. - Siehe auch Editieren von monobook.php
- Achtung: Das Google AdSense-Programm sammelt im Rahmen von DoubleClick seit 2009 standardmäßig Informationen über die von den Nutzern der mit Google-Werbung angereicherten Webseiten besuchten Webseiten. Dies kann der Web-Betreiber aber in seinen AdSense-Kontoeinstellungen ausschalten (keine sog. Interessenbezogene Anzeigen).
Andere Bannerwerbung
Siehe z.B.
Verschieben von LocalSettings.php
mv /var/lib/mediawiki1.7/config/LocalSettings.php /var/lib/mediawiki1.7/LocalSettings.php
Nutzen des Wikis
Zugriff über
http://localhost/mediawiki/index.php
Administration
Kurz-URLs
- Ziel: Ansprechen des Wikis über http://server.de/mywiki/ArtikelName statt über http://server.de/mediawiki/index.php/ArtikelName
- Erstellen einer Datei
/etc/apache2/conf.d/my.conf
mit folgendem Inhalt:
Alias /mywiki /var/lib/mediawiki1.7/index.php
- Neustart des Webservers:
/etc/init.d/apache2 reload
- Setzen folgender Variablen in LocalSettings.php (Ändern der bisherigen Werte bzw. Ergänzen der Variablen):
$wgArticlePath = "/mywiki/$1"; $wgUsePathInfo = true;
Ändern der Email-Adresse eines Benutzers
cd /usr/share/mediawiki php maintenance/resetUserEmail.php --wiki $WIKI_ID "$user" "$email"
Einrichten von weiteren InterWikis
Mehrere Instanzen von MediaWiki auf einem Server
Lösungsvorschlag
- Z.B. per Dynamisches DNS für jedes Wiki einen Servernamen anlegen.
- Die einzelnen Wikis nacheinander konfigurieren; dabei
/var/lib/mediawiki1.7/config/LocalSettings.php
jeweils nach/var/lib/mediawiki1.7/wiki123LocalSettings.php
verschieben. - Eine neue zentrale Verteiler-LocalSettings.php schreiben und als
/var/lib/mediawiki1.7/LocalSettings.php
abspeichern (Achtung: Keine Leerzeilen, keine Testausgaben in die Datei einfügen):
<?php switch ($_SERVER["SERVER_NAME"]) { case "wiki1.dyndns.org": require_once "wiki1LocalSettings.php"; break; case "wiki2.dyndns.org": require_once "wiki2LocalSettings.php"; break; default: require_once( 'wiki2LocalSettings.php' ); } ?>
- Dieser Vorschlag beruht auf der ersten Variante des Quick Setups. Die zweite Variante (Entscheidung auf Basis des hinteren Teils der URL) funktioniert nicht beim Editieren der Seiten, weil dort die Url wieder gleich aussieht (/mediawiki/...).
Weiterführende Links
- Setup for Dummies
- Quick Setup (MediaWiki-Manual)
- Basic Wiki Farm
- Farmer-Extension (am besten ab MediaWiki V 1.13)
- Script zur Installation einer weiteren MediaWiki-Instanz
- $wgSharedDB
- http://wiki.johnjosephbachir.org/Multiple_MediaWiki_instances_sharing_a_codebase_and_user_table
- wikimedia-FAQ
- MediaWiki Farm
- Running multiple Instances (PDF)
Weitere Links zur Administration
Markup-Konverter
Konverter des MediaWiki-Markups in HTML
- Übersicht über Wiki-Markup-Konverter
- Übersicht über Konverter und sonstige Markup-Parser
- MediaWikis mitgelieferter Parser:
php maintenance/parse.php --title xy
- http://code.google.com/p/gwtwiki/ (Java-basierter Webservice)
Synchronisation mit einem Offline-MediaWiki
Spezialfall: Wiki für private Gruppe
Um ein privates Wiki anzulegen, das nur für eine bestimmte Gruppe einsehbar und editierbar ist, bieten sich folgende Schritte an.
Domainregistrierung
Eine Domainregistrierung ist optional. Der Betrieb eines MediaWikis bedarf keiner eigenen Domain, jedoch ist es auch für kleinere Gruppen meist vorteilhaft, mit einer Domain darauf zuzugreifen.
Siehe dazu Webhosting
Einrichtung eines virtuellen Servers
Auch ein (virtueller) Server im Netz ist nicht zwingend für MediaWiki erforderlich. Es reicht auch WebSpace mit
- MySQL
- PHP
- Apache
aus.
Allerdings bietet ein virtueller Server höhere Flexibilität, z.B. für Backup oder Email-Versand.
Zur Einrichtung siehe Webhosting.
Installation eines Webservers
Regelmäßig bietet sich der Standard-Webserver Apache an.
Installation von MySQL
MySQL wird zur Benutzung von MediaWiki benötigt.
Installation von MediaWiki
Installiert werden können entweder die herunterladbaren Original-PHP-Quelldateien oder aber die Installation des MediaWiki-Pakets.
Konfiguration des MediaWiki
Zur Einrichtung unter http://wiki.yourdomain.com/config/index.php siehe oben.
Einstellen der Domain
Das Wiki sollte (nur) auf Anfragen mit der Wiki-Domain Seiten darstellen. Das ist zur Abgrenzung weiterer Funktionen auf dem (virtuellen) Server unter anderer Domain notwendig.
Erstellen von neuen Benutzern nur durch Admin
Verbot des Schreibens und Lesens für anonyme Benutzer
Bei der Installation kann man angeben, dass man ein "geschlossenes Wiki" haben will. Dann können anonyme Benutzer weder schreiben noch lesen. Man kann sich auch nicht selbst als neuer Benutzer registrieren.
Versenden von Mails
MediaWiki benötigt für die Versendung von Mails entsprechende Einstellungen in der PHP-Email-Konfiguration.
Wenn man Postfix eingerichtet hat und in der Shell das Verschicken von Emails mit mail
ausprobiert hat, muss man noch dafür sorgen, dass von PHP aus man Mails verschicken kann:
sudo aptitude install php-mail php-mail-mime php-mail-mimedecode
Neben dem Einschalten von Mails (ebenfalls in der LocalSettings.php) ist noch in der LocalSettings.php folgende Einstellung vorzunehmen:
$wgPasswordSenderName = "Wiki Administrator";
Kurze URLs
Kurze URLs mit Apache
Apache-Rewrite einrichten und in LocalSettings.php niederlegen, dass kurze URLs (example.com/Stichwort) als URL verwendet wird. Dazu das Apache-Modul Rewrite aktivieren:
sudo a2enmod rewrite
Einrichten eines Apache-Virtual Hosts z.B. /etc/apache2/sites-available/enebene
<VirtualHost *> ServerName www.enebene.de ServerAdmin ebene@emailprovider.de ServerAlias enebene.de
DocumentRoot /var/lib/mediawiki
AddType image/x-icon .ico
RewriteEngine on
# Short url for wiki pages RewriteRule ^/?eb/?(.*)?$ %{DocumentRoot}/index.php?title=$1 [L]
<Directory /var/lib/mediawiki/> Options +FollowSymLinks AllowOverride All order allow,deny allow from all </Directory>
# some directories must be protected <Directory /var/lib/mediawiki/config> Options -FollowSymLinks AllowOverride None </Directory> <Directory /var/lib/mediawiki/upload> Options -FollowSymLinks AllowOverride None </Directory> </VirtualHost>
In /etc/mediawiki/LocalSettings.php
noch folgende Zeile am Ende einfügen
$wgArticlePath="/eb/$1";
Der Zugriff erfolgt dann über http://www.enebene.de/eb/Stichwort Siehe auch http://www.mediawiki.org/wiki/Manual:Short_URL/Apache
Kurze URLs mit NGINX
Siehe für kurze MediaWiki-URLs mit NGINX:
- https://www.mediawiki.org/wiki/Manual:Short_URL/Page_title_-_nginx,_Root_Access,_PHP_as_a_CGI_module
- https://wiki.archlinux.org/index.php/MediaWiki#Nginx
- Short-URLs von Redwerks - Service funktioniert nur mit öffentlich zugänglichen MediaWikis
Home Page in Gruppenseite umbenennen
Logo hochladen
Datei-Upload erlauben
Anpassen php.ini
Neben dem grundsätzlichen Erlauben des Hochladens von Dateien in PHP muss man noch die erlaubten Dateigrößen und -typen in /etc/php/7.0/fpm/php.ini
oder /etc/php5/apache2/php.ini
anpassen:
(Angaben in Megabyte)
post_max_size=8M upload_max_filesize=2M
Anpassen LocalSettings.php
Am Ende von /etc/mediawiki/LocalSettings.php
ist folgende Zeile anzufügen:
$wgEnableUploads = true;
In LocalSettings.php
sollten die weiteren benötigten Dateitypen erlaubt werden:[1]
$wgFileExtensions = array_merge( $wgFileExtensions, array( 'doc', 'xls', 'mpp', 'pdf', 'ppt', 'xlsx', 'jpg', 'tiff', 'odt', 'odg', 'ods', 'odp' ) );
Mime-Typen
In /etc/mime.types
(und nicht in /usr/share/mediawiki/includes/mime.types
) sollten noch beim Zip-Dateityp eine Ergänzung vorgenommen werden:[2]
application/zip zip xlsx docx pptx
Drag & Drop - File-Upload
Die MediaWiki-Erweiterung MsUpload unterstützt den Upload mehrerer Dateien gleichzeitig. Außerdem kann mittels HTML5 bzw. Flash die Dateien mit der Maus ins Bearbeiten-Fenster verschoben werden.
Zur Installation:
- Herunterladen der Erweiterung von http://www.ratin.de/msupload.html
wget http://www.ratin.de/wiki_ext/MsUpload_9.2.zip
- Entpacken der Erweiterung
unzip MsUpload_9.2.zip
- Ändern des Eigentümers und Verschieben nach mediawiki/extensions:
sudo chown -R www-data:www-data MsUpload sudo mv MsUpload /var/lib/mediawiki/extensions/
- Ergänzung der
/etc/mediawiki/LocalSettings.php
am Ende:
$wgMSU_ShowAutoKat = true; // autokategorisierung $wgMSU_CheckedAutoKat = true; // checkbox: checked = true/false $wgMSU_debug = false; $wgMSU_ImgParams = "400px"; $wgMSU_UseDragDrop = true; // show Drag&Drop Area? require_once("$IP/extensions/MsUpload/msupload.php");
- Installation der Bilderkonvertiersoftware:
sudo aptitude install graphicsmagick-imagemagick-compat
oder
sudo aptitude install imagemagick
Spielwiese einrichten und Anleitung erstellen
Eine Seite, die als Spielwiese/Sandkasten zum Ausprobieren dient, sollte eingerichtet werden. Außerdem bedarf es einer Kurz-Anleitung mit Links auf die Hilfen von Mediawiki
Dabei kann z.B. auch gezeigt werden, wie Tabellen aus OpenOffice nach MediaWiki exportiert werden können. Denn gerade zur Koordination von Gruppen werden häufig Tabellen verwendet, die bequemer in einem Office-Paket statt über die MediaWiki-Oberfläche erstellt werden können.
Test von Benutzern
Sowohl Editieren als auch Emailen von neuen Benutzern sollte mittels Test-Accounts getestet werden, bevor das Wiki offiziell eröffnet wird.
Hauptseite umbenennen
Die Hauptseite sollte einen schöneren Namen bekommen und entsprechend die Navigation angepasst werden.
Einloginformation anpassen
Sinnvoll erscheint es, die Anmelde-Seite, die einem nicht eingeloggten Benutzer gezeigt wird, noch so anzupassen, dass der neue Benutzer schon weiß, dass er auf der richtigen Seite gelandet ist.
WYSIWYG-Editor
Ein Editor sollte den Benutzern zur Verfügung gestellt werden, der ähnlich wie Office-Programme (mit Klicks/Tastenkürzel statt ausdrücklichem Markup) bedient werden kann.
Die mit MediaWiki jedenfalls ab 0.19 standardmäßig ausgelieferte Erweiterung "WikiEditor" ist ein Anfang. Diesen sollte man für alle Benutzer in der /etc/mediawiki/LocalSettings.php
standardmäßig aktivieren:
# Enables use of WikiEditor by default but still allow users to disable it in preferences $wgDefaultUserOptions['usebetatoolbar'] = 1; $wgDefaultUserOptions['usebetatoolbar-cgd'] = 1; # Displays the Preview and Changes tabs $wgDefaultUserOptions['wikieditor-preview'] = 1; # Displays the Publish and Cancel buttons on the top right side $wgDefaultUserOptions['wikieditor-publish'] = 1;
Umstellen auf SSL
Jede Kommunikation im Netz sollte verschlüsselt erfolgen. Daher sollte auch auf ein privates Wiki mittels SSL (https://...) zugegriffen werden. Dazu wird ein SSL-Zertifikat für die eigene Domain benötigt. Dieses muss dann auch noch in Apache und MediaWiki eingerichtet werden.
Sperren eines geblockten Benutzers
Über die Sperren-Spezial-Seite kann ein Benutzer am Editieren gehindert werden.
Mit Hilfe von $wgBlockDisablesLogin = true; in der LocalSettings.php kann man auch verhindern, dass der Benutzer sich noch zum Lesen einloggen kann.
Troubleshooting
Thumbnails werden nicht angezeigt
In einer deutschen MediaWiki-Installation kann es sein, dass bei Ausgabe des srcset
-Attributs der Wert 1.5x
fälschlicherweise als 1,5
(mit Komma statt Punkt) ausgegeben wird.
Das kann durch Setzen von
setlocale(LC_NUMERIC, "C")
in LocalSettings.php
verhindert werden.[3]
Exception encountered, of type "ParseError"
Der Fehler tritt beim Upgrade von MediaWiki auf Version 1:1.27.7-1~deb9u4 auf. Der Fehler soll schnell bereinigt werden, siehe https://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg1766603.html
Bis dahin hilft ein Downgrade auf die vorherige Version:
sudo aptitude install 'mediawiki=1:1.27.7-1~deb9u3'