Webtrees Handbuch/Anleitung für Webmaster/Anleitung Upgrade 21

aus GenWiki, dem genealogischen Lexikon zum Mitmachen.
Zur Navigation springen Zur Suche springen
Info
Handbuch Im Aufbau...

Bitte haben Sie noch ein wenig Geduld..


Systemarchitektur


Systemarchitektur (Client, Server, Backend)
Systemarchitektur (Client, Server, Backend)

Die Systemarchitektur für die Anwendung webtrees umfasst einen Client, einen Server und das Backend mit dem Archiv für webtrees bei GitHub.

Client


Der Client ist das Endgerät des Nutzers auf dem irgendein aktueller Browser installiert ist (Firefox, Chrome, Edge, Safari, usw.). Als Endgerät kommen etwa Laptop, Tablet oder Smartphone in Frage. Entsprechend der Rolle des Nutzers in webtrees werden teilweise neben dem Browser noch weitere lokal installierte Anwendungen benötigt.

Besucher sowie Mitglieder oder Moderatoren benötigten nur den Browser um auf alle Funktionen von webtrees zugreifen zu können. Mitglieder und Moderatoren benötigen für die erstmalige Anmeldung eine E-Mail-Möglichkeit. Der Administrator kann aus webtrees heraus E-Mails an die Nutzer verschicken.

Ein Verwalter oder Administrator benötigt darüber hinaus ein Programm mit dem er E-Mails empfangen kann. Er wird auf diesem Weg darüber informiert, dass ein neuer Nutzer ein Konto beantragt hat. Sobald eine neue Version von webtrees auf dem Backend-Server verfügbar ist, erfolgt ebenfalls eine Nachricht an die Administratoren.

Der Webmaster benötigt ein ftp-Programm (ftp-Client) mit dem er Daten auf den Server hochladen und von diesem herunterladen kann. Und er benötigt ein Programm mit dem er die webtrees-Datenbank verwalten kann. Näheres dazu ist im nachfolgenden Abschnitt "Werkzeuge für den Webmaster" beschrieben.

Server


Der webtrees-Server kann ein physischer oder ein virtueller Server sein. Als physischer Server kommt vor allem ein dedizierter oder geteilter Server bei einem Hosting-Anbieter in Frage (siehe nächster Abschnitt "Auswahl eines Hosting-Anbieters"), aber auch ein eigener Rechner zu Hause, wie etwa ein PC, ein RaspberryPi oder ein Netzlaufwerk (siehe nachfolgender Abschnitt "Lokal installierter Server"). Als virtueller Server kommt etwa ein Docker-Container in Frage. Eine Sonderform der Installation wäre, dass der Client und der Server auf dem selben Endgerät, also lokal, installiert sind.

Die einzelnen Komponenten des Servers sind

  • Datenbank
  • ftp-Server
  • Zertifikatsspeicher
  • Laufwerk mit den Programmdateien
  • Web-Server
  • PHP-Interpreter
  • E-Mail-Server
Nuvola pen.svg Noch beschreiben: genaue Funktion aller Server-Komponenten mit ggf. einem Verweis auf die Abschnitte unter "Voraussetzungen"; insbesondere wie geht das mit der http-Kompression und wie geht das mit dem Interpretieren von PHP und wie geht das mit kompaktem JavaScript; fehlt noch eine Server-Komponente "JavaScript-Interpreter? Nuvola pen.svg
Nuvola pen.svg Was ist mit Nachrichten über das Formular? Interne Benachrichtigung und/oder E-Mail? Nuvola pen.svg

Backend-Server


Der Backend-Server für webtrees liegt bei GitHub, dort liegen die aktuelle Version von webtrees und die in Entwicklung befindlichen Versionen. Auch fast alle Erweiterungsmodule liegen bei GitHub. Beim automatischen Upgrade, veranlasst durch einen Administrator, lädt webtrees eigenständig eine neue webtrees-Version vom Backend-Server auf den webtrees-Server.

webtrees prüft über eine Abfrage der auf dem Backend-Server vorliegenden aktuellen Version, ob es dort eine neuere Version gibt. Dazu wird die Datei "dev.webtrees.net/build/latest-version.txt" vom Backend-Server geladen. Diese Prüfaktion wird immer dann angestoßen, wenn irgendeine webtrees-Seite aufgerufen wird; die Prüfung erfolgt aber maximal einmal alle 24 Stunden. Für den Fall, dass ein Upgrade vorliegt, werden die Administratoren per E-Mail einmalig darüber informiert und es erfolgt für einen angemeldeten Administrator an verschiedenen Stellen in der Bedienoberfläche ein Hinweis.

Um eine Übersicht über die weltweit installierten webtrees-Instanzen zu bekommen, wird bei dieser Prüfung auf eine neue Version auch eine Information mit den wichtigsten Parametern des webtrees-Servers übertragen. Die dabei übermittelten Informationen sind

  • eine eindeutige, anonymisierte Kennung der webtrees-Installation
  • installierte webtrees-Version
  • verwendete PHP-Version
  • Typ der genutzten Datenbank.

Die gewonnenen Statistikinformationen werden auf dieser webtrees-Seite publiziert.

Kommunikationsnetz


In den meisten Fällen kommunizieren die Client-Rechner mit dem webtrees-Server über eine Internet-Verbindung. Diese sollte möglichst schnell und verschlüsselt sein (https).

Die Verbindung zum Backend-Server erfolgt immer über das Internet und ist immer verschlüsselt.

Nuvola pen.svg Im gesamten obigen Abschnitt für die Fachbegriffe noch Links auf die wikipedia einfügen Nuvola pen.svg


Upgrade auf webtrees Version 2.1

Die Version 2.1.0 von webtrees unterstützt den GEDCOM-Standard 5.5.1 und einige Dialekte von GEDCOM, wie sie von diversen Genealogieprogrammen genutzt werden. Zur Vorbereitung auf den GEDCOM-Standard 7.0 wurden bereits in der Version 2.1.0 von webtrees die im folgenden beschriebenen Anpassungen vorgenommen.

Mehrere RESN-Tags in einem Datensatz


Wichtig
Ein Administrator oder ein Verwalter sollte prüfen, ob die folgende Änderung eventuell datenschutzrelevante Auswirkungen auf Informationen in einem Stammbaum haben könnte und deshalb Anpassungen nötig sind (eventuell unter Nutzung der Funktion "Suchen und Ersetzen").


Laut GEDCOM 5.5.1 darf ein Datensatz oder Fakt nur maximal ein RESN-Tag haben (siehe Abschnitt "Datenschutz für Fakten". Es gibt jedoch zwei Arten von Einschränkungen, zum einen bezüglich des Anzeigens und zum anderen bezüglich des Bearbeitens von Daten.

In webtrees bis zur Version 2.0 wurde diese Inkonsistenz im Standard dadurch gelöst, dass mehrere Tags zugelassen wurden. Zum Beispiel

 0 @X1@ INDI
 1 RESN privacy
 1 RESN locked

Die GEDCOM 7.0-Spezifikation besagt, dass mehrere Werte in einem einzigen Tag kombiniert werden sollen. Zum Beispiel

 0 @X1@ INDI
 1 RESN PRIVACY, LOCKED

webtrees 2.1 verwendet nun dieses neue Format. Wenn in einem Stammbaum bislang beide Einschränkungen in einem Datensatz in zwei RESN-Zeilen verwendet werden, dann muss dies nun korrigiert werden, da nur noch das erste RESN-Tag verwendet wird. Dadurch könnten eventuell zu schützende Daten unbeabsichtigt sichtbar oder bearbeitbar werden.

Groß- und Kleinschreibung


Laut dem GEDCOM-Standard 5.5.1 sind Groß- und Kleinschreibung bei vordefinierten Attributen (Aufzählungswerten) gleichwertig. Beispielsweise werden die folgenden Datensätze gleich behandelt:

 1 NAME
 2 TYPE married

oder

 1 NAME
 2 TYPE MARRIED

oder

 1 NAME
 2 TYPE mArRiEd

Ähnliches gilt auch bei vielen weiteren vordefinierten Attributen, zum Beispiel bei speziellen Altersangaben, etwa bei der Angabe, ob ein Kind tot geboren wurde:

 1 DEAT
 2 DATE 13 MAY 1984
 2 AGE stillborn

oder

 1 DEAT
 2 DATE 13 MAY 1984
 2 AGE STILLBORN

In GEDCOM 7.0 müssen diese Werte in Großbuchstaben geschrieben werden. webtrees 2.1 unterstützt weiterhin Werte in Groß- und Kleinschreibung, allerdings werden neue Werte ab jetzt nur noch in Großbuchstaben erstellt.

Zeitangaben


Häufig wird in Geburts- oder Sterbedokumenten neben dem Datum auch die genaue Uhrzeit angegeben. Laut dem GEDCOM-Standard 5.5.1 sind Uhrzeitangaben als Ergänzung zu Datumsangaben nicht zulässig. Das ist aber im GEDCOM-Standard 7 erlaubt. Da webtrees diese mögliche Angabe schon sehr lange unterstützt, wurde diese Unterstützung auch in der Version 2.1.2 wieder eingebaut, nachdem sie in 2.1.0 entfallen war.

GEDCOM


Die Interpretation von GEDCOM-Inhalten wurde komplett überarbeitet und orientiert sich nun strikter am Standard, wobei aber auch sehr viele GEDCOM-Dialekte nun explizit und kontrolliert unterstützt werden. Die Suche nach GEDCOM-Fehlern in den Daten wurde erheblich ausgebaut.

Erweiterungsmodule


Beim Wechsel von der Version 2.0 auf die Version 2.1 sind sehr viele interne Schnitstellen geändert worden. Im Ergebnis sind dadurch fast alle Erweiterungsmodule nicht mehr kompatibel und müssen entsprechend angepasst werden.