OptiYummy-Update 1.31 auf 1.35

Aus OptiYummy
Zur Navigation springenZur Suche springen

Problem

Nachdem das System in der Version 1.31 fast ein Jahr lang stabil gelaufen war, änderte sich plötzlich das äußere Erscheinungsbild, ohne dass zuvor eine Änderung in der Konfiguration vorgenommen wurde. Die Rahmen des MonoBook-Design fehlten und der Navigationsbereich befand sich nicht mehr links vom Inhalt, sondern unterhalb des Seiten-Inhalts:

  • Bei einem einzelnen Nutzer war dieses Problem vor einigen Monaten auch schon aufgetreten, aber nirgendwo sonst.
  • Nun tritt dieses Problem permanent überall auf.
  • Da die Erzeugung des Seitenquelltextes durch die Komponenten des MediaWiki-Systems selbst erfolgt (welches nicht geändert wurde) vermute ich eine Änderung auf dem Server, von dem aus die Seiten ausgeliefert werden.
  • Die erste Reaktion des STRATO-Service war das Betonen der Verantwortung des Kunden für seine Web-Präsenz, im Beispiel also für die Lauffähigkeit des eigenen MediaWiki-Systems.
  • Experimente mit den Original-Dateien des MonoBook-Skins konnten einen Einfluss der eigenen Anpassungen ausschließen.
  • Deshalb soll das WikiSystem von Grund auf neu installiert werden. Das Einspielen der alten Inhalte nach dem vorherigen Sichern des aktuellen Zustandes sollte nach den bisherigen Erfahrungen einigermaßen problemlos gelingen.

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 Dezember 2020:

  • Damit eine Domain (hier: optiyummy.net) 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 /.
  • Wichtig: Es können nur Domains verwendet werden, welche bei STRATO noch nicht für die Installation eines MediaWiki verwendet wurden (Diese sind dann in der Auswahlliste gekennzeichnet durch "App ist bereits installiert" - wie man dieses Kennzeichen rückgängig macht, ist sicher ein weiteres Problem!).
  • Auf der Startseite des Kundenlogin findet man unten in der Navigationsleite 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.net wurde infolge des Einhaltens der obigen Bedingungen in der Liste zur Auswahl angeboten
  • Nach dem Ausfüllen der geforderten Angaben betätigt man "Fertigstellen".

Das erstellte MediaWiki-System besitzt folgende Konfiguration:

  • Version 1.35.0
  • Es wurde ein Ordner "/STRATO-apps/mediawiki_11/app" angelegt (app-Ordner: Unterschied zu vorherigen Installation!)
  • Danach steht ein MediaWiki-System in seiner Grundeinstellung zur Verfügung.

Wiki-System individuell konfigurieren

Man benötigt den Zugang direkt auf die Dateien des Wiki-Systems im Homeverzeichnis. Von STRATO werden für den Zugriff auf das Homeverzeichnis ein SSH-Zugang zur Verfügung gestellt:

  • Server: ssh.strato.de
  • Benutzername: Domän-Name (im Beispiel: www.optiyummy.net)


Vergeben von Nutzerrechten

Die folgenden Einstellungen sind in der Datei LocalSettings.php vorzunehmen, welche sich im Wiki-Verzeichnis mediawiki_11 befindet. Dazu wurde eine lokale Kopie von LocalSettings.php erzeugt. Diese wird schrittweise verändert und zum Test der Wirkung wieder per SSH in das Wiki-Verzeichnis kopiert.


Wichtig: Standardmäßig können auch anonyme Nutzer Wiki-Seiten editieren! Deshalb sollte man als erste Aktionen die Nutzerrechte ändern. Dazu ergänzt man in der Datei LocalSettings.php am Ende die Zeilen:

## 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

  • Im MediWiki ist standardmäßig eingestellt, dass alle Suchmaschinen alle Seiten indizieren dürfen. Dafür wird in der Datei includes\DefaultSettings.php der Eintrag $wgDefaultRobotPolicy = 'index,follow'; genutzt.
  • Wie dies realisiert ist, kann man sich im Browser im Quelltext der generierten Seiten anschauen. Im Beispiel werden bestimmte Spezialseiten vom MediaWiki mittels "noindex,nofollow" explizit für die Suchmaschinen verboten.
  • Unabhängig davon sollte man in das Stammverzeichnis des Wiki-Systems eine Textdatei robots.txt ablegen:
    • Die Suchmaschinen lesen beim Finden einer Webseite zuerst diese Datei im Stammverzeichnis der Domäne.
    • In dieser Datei kann beschrieben werden, ob und wie die Suchmaschine (Robot) die Seiten erfassen darf.
    • Es ist wichtig, unsinnige Robots auszusperren, um nicht unsinnigen Datenverkehr für das Wikisystem zu erzeugen.
    • Für Laien ist es günstig, als Grundlage die Datei robot.txt der Wikipedia zu verwenden. Auf konkrete Verzeichnisse der Wikipedia bezogene Einträge (z.B. /wiki/) muss man löschen!

Anpassung des Erscheinungsbildes

Wahl des MonoBook-Skin

  • Standardmäßig ist in der Version 1.35 der Skin "vector" eingestellt.
  • Durch Änderung in LocalSettings.php kann man "monobook" wählen:
## Default skin: you can change the default skin. Use the internal symbolic
## names, ie 'monobook', 'vector':
$wgDefaultSkin = "monobook";

Eigenes Logo und Favicon:

  • Die erforderlichen Dateien werden per SSH in den images-Ordner kopiert.
  • in LocalSettings.php wird die Zeile:
$wgLogo = [ '1x' => "$wgResourceBasePath/resources/assets/wiki.png" ];
  • ersetzt durch:
## Eigenes Logo 135x135 Pixel einbinden
$wgLogo = "/images/logo.gif";
$wgFavicon = "/images/favicon.ico";
  • Achtung: Funktioniert nicht, da der Direktzugriff auf Dateien im image-Ordner durch .htaccess-Datei abgeblockt wird (1.35 enthält):
<IfModule rewrite_module>
	RewriteEngine On
	RewriteOptions inherit
	# Fix for bug T64289
	Options +FollowSymLinks
</IfModule>
  • Ist inhaltlich zu ersetzen durch (.htaccess aus Version 1.31):
# Protect against bug 28235
<IfModule rewrite_module>
	RewriteEngine On
	RewriteCond %{QUERY_STRING} \.[^\\/:*?\x22<>|%]+(#|\?|$) [nocase]
	RewriteRule . - [forbidden]
</IfModule>