OptiYummy-Update 1.35 auf 1.39
Vorhaben
Nach der Einführung der neuen LTS Verison 1.39.1 des Mediawikis sollte auch dieses System auf die neue Version umgestellt werden. Für die nächsten Monate/Jahre sollten damit zunächst keine größeren Wartungsarbeiten anfallen. Es erfolgte eine komplette Neuinstallation mit anschließendem Übertragen der bisherigen Konfiguration und Inhalte. Folgende Daten wurden zuvor gesichert:
- Kopie des gesamten Ordners mediawiki_ab (ab = alte Version) vom Server des Hosters per SFTP.
- Export der Datenbank über Strato-Webseite und PhpMyAdmin. Ausführliche Informationen dazu im letzten Update.
- Export der Datenbank über Datenbankübersicht bei Strato > Backups. Dort werden Daten zum Download per SFTP auf Port 22 bereitgestellt. (Kleinere Dateigröße als PhpMyAdmin!)
- Packen des gesamten image-Ordners mit anschließendem Download des Archivs per SFTP:
cd STRATO-apps/mediawiki_ab tar -vczhf image_backup.tgz app/images
Theoretisch wäre ein Update auch möglich (aber nicht empfohlen), wenn man nur die nötigsten Dateien sichert:
- Backup der Datenbank bei Strato per SFTP.
- Packen und sichern des aktuellen image-Ordners mit allen Dateien und Unterordnern.
- Sichern der beiden Dateien robot.txt und php.ini aus dem Ordner mediawiki_ab/app, statt Sicherung des gesamten Ordners.
Für den SFTP-Zugriff wurde FileZilla genutzt. Kopiervorgänge und das Bearbeiten von Dateien sind damit sehr komfortabel möglich.
Installation des MediaWiki-Systems mit STRATO-AppWizard
Das Web-Interface für Hosting-Pakete wird von STRATO kontinuierlich modifiziert. Diese Beschreibung entspricht dem Stand vom Januar 2023:
- Damit eine Domain (hier: optiyummy.eu) für das neue Wiki-System verwendet werden kann, darf sie nicht extern umgeleitet oder von anderen Anwendungen belegt sein! Dies ist über die Domain-Verwaltung des Webhosting-Paketes zu realisieren (interne Umleitung z.B. auf /.
- Auf der Startseite des Kundenlogin findet man unten in der Navigationsleiste den Eintrag WordPress & Co.
- Nach Wählen dieser Funktion findet man in der Kategorie Community-Software die Möglichkeit zur MediaWiki-Installation.
- Die Domäne optiyummy.eu wurde infolge des Einhaltens der obigen Bedingungen in der Liste zur Auswahl angeboten
- Nach dem Ausfüllen der geforderten Angaben betätigt man "Fertigstellen":
- Administrator-Benutzername + Passwort
- Administrator E-Mail
- Titel der Webseite
- Der erste Installationsversuch schlug mit einer kaum hilfreichen Fehlermeldung fehl. Es wurden ein leerer Ordner mediawiki_yz und eine leere Datenbank erstellt.
- Ein erneuter Versuch mit identischen Angaben führte zum Erfolg.
Das erstellte MediaWiki-System besitzt folgende Konfiguration:
- Version 1.39.1
- Es wurde ein Ordner "/STRATO-apps/mediawiki_xx/app" (xx = neue Version) angelegt
- Danach steht ein MediaWiki-System in seiner Grundeinstellung zur Verfügung.
Wiki-System individuell konfigurieren
Die Konfiguration des Wikis erfolgt bis zum Einspielen der alten Datenbank sehr ähnlich wie bisher. Weitere Details sind bei Unklarheiten im letzten Update nachzulesen. Neuerungen und Anpassungen in dieser Version werden auf dieser Seite explizit hier erläutert.
Die folgenden Einstellungen sind in der Datei LocalSettings.php vorzunehmen, welche sich im Wiki-Verzeichnis mediawiki_xx befindet. Alle hier beschriebenen Änderungen sollten ganz am Ende der Datei im vorgesehenen bereich erfolgen. Die vordefinierten Standardeinstellungen werden dabei überschrieben, bleiben aber bei Problemen in der Datei erhalten und sind nicht verloren.
Die Konfiguration kann komplett per SSH über Kommandozeile oder die "Datei Bearbeiten"-Funktion von FileZilla per SFTP erfolgen. Dabei wird die Datei heruntergeladen, lokal unter AppData/.../FileZilla gespeichert und beim Speichern im Texteditor automatisch (nach expliziter Bestätigung) von FileZilla zurück zum Server übertragen.
- Server: ssh.strato.de
- Benutzername: Domän-Name (im Beispiel: www.optiyummy.net)
Vergeben von Nutzerrechten
Wichtig: Standardmäßig können auch anonyme Nutzer Wiki-Seiten editieren! Deshalb sollte man als erste Aktionen die Nutzerrechte ändern.
##---------------------------------------------------------- ## Benutzerverwaltung ## Nur noch angemeldeten Benutzern das Bearbeiten erlauben $wgGroupPermissions['*']['edit'] = false; ## Neuanmeldungen verbieten $wgGroupPermissions['*']['createaccount'] = false; ## Anlegen neuer Seiten nur für angemeldete Nutzer $wgGroupPermissions['*']['createpage'] = false; ## Anlegen neuer Diskussionen nur für angemeldete Nutzer $wgGroupPermissions['*']['createtalk'] = false; ## Verstecken der Edit-Section-Links vor nichtangemeldeten Nutzern $wgDefaultUserOptions['editsection'] = false; ## Ausschalten der Links auf IP-Diskussionsseiten rechts oben $wgShowIPinHeader = false;
Es wird ein Creative Commons Lizenzmodell für die Inhalte benutzt. Zulässig ist folgende Verwertung der Inhalte:
- Verteilung: kopieren, verbreiten und öffentlich Aufführen
- Modifikation: Anpassung der Inhalte an die eigene Arbeit
- Kommerzielle Verwertung
Unter der Bedingung:
- der Namensnennung des Autors oder des Lizenzsgebers,
- ohne den Eindruck zu erwecken, bei der Verwertung Unterstützung erhalten zu haben.
Dazu sind folgenden Variablen in LocalSettings.php zu ergänzen:
$wgRightsUrl = "https://creativecommons.org/licenses/by/3.0/"; $wgRightsText = "Creative Commons"; $wgRightsIcon = "https://i.creativecommons.org/l/by/3.0/88x31.png";
Indizierung durch Suchmaschinen reglementieren
Man sollte für Suchmaschinen die zuvor aus dem alten Wiki gesicherte Datei robots.txt in den Ordner mediawiki_xx/app kopieren. Weitere Hinweise dazu im letzten Update.
Anpassen des Erscheinungsbildes
Wahl eines Skins
- Standardmäßig ist in der Version 1.39 der Skin "vector" eingestellt.
- Durch Einfügen folgender zeile in LocalSettings.php kann man "monobook" wählen:
## Skin umstellen: $wgDefaultSkin = "monobook";
- Bei Bedarf kann der Skin hier auch problemlos nachträglich angepasst werden.
- Ein Ausblenden von Funktionen für nicht angemeldete Nutzer wird vorläufig nicht vorgenommen!
Eigenes Logo und Favicon
- Die erforderlichen Daten kommen später aus dem importierten image-Ordner. Zu Testzwecken können Sie jetzt schon in den noch leeren Ordner kopiert werden.
- Alternativ kann man auch warten, bis der gesamte Ordner wieder hergestellt wurde (siehe unten). Dann funktionieren nachfolgende Änderungen nicht sofort. Alternativ kann auch jetzt schon der gesamte Ordner importiert werden.
- Einfügen in LocalSettings.php:
## Eigenes Logo 135x135 Pixel einbinden $wgLogos = [ '1x' => "/images/logo.gif", ]; $wgFavicon = "/images/favicon.ico";
- Die Variable $wgLogos wurde im Vergleich zur letzten Version umbenannt ($wgLogo, ohne s).
- Das neue Array enthält theoretisch auch einen Eintrag 'icon' für das Favicon. Leider wurde das Icon über anpassen dieses Pfads nicht angezeigt.
- Die neue Variante ist deshalb eine Kombination des Arrays für das große Logo und der alten Variable $wgFavicon für die Anzeige im Browsertab.
- Achtung: Die Darstellung der Bilder funktioniert nur, wenn der Direktzugriff im image-Ordner durch die .htaccess-Datei erlaubt ist. Dazu die alte Datei mit einfügen bzw. gleich komplett mit dem gesicherten image-Ordner importieren.
Hochladen von Dateien konfigurieren
Für das Wiki-System muss man die Konfiguration der Datei-Größe und die zu verwendende Verzeichnis-Struktur über LocalSettings.php vornehmen. Dazu folgende Konfiguration anfügen:
$wgEnableUploads = true; $wgMaxUploadSize = 1024*1024*200; # 200MB $wgUploadSizeWarning = 1024*1024*10; # 10MB $wgUseImageResize = true; $wgUseImageMagick = true; $wgImageMagickConvertCommand = "/usr/bin/convert"; $wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'zip', 'pdf', 'hlp', 'swf', 'wmv', 'svg' ); ##fix for thumbnail error 25: $wgMaxImageArea = 3e7; $wgMaxShellMemory = 1024000; $wgMaxShellFileSize = 204800; ## Directories images/archive, images/thumb and images/temp werden automatisch angelegt! $wgHashedUploadDirectory = false; # nicht Bilder-Verzeichnisstruktur "/a/ab/foo.png" verwenden
- Außerdem muss man die zuvor gesicherte Datei php.ini in das Wurzelverzeichnis des Wiki-Systems speichern (dort, wo auch LocalSettings.php liegt).