Synology DSM 7.2/7.3, Web Station 4, Webdienst und Webportal erstellen (ehemals vHost)

Ziel: Über einen Hostnamen, z.B. demo.example.com, soll ein Dienst oder eine Webseite bereitgestellt werden.

Voraussetzungen:

  • Auf der Synology Diskstation ist mindestens Synology DSM 7.2 und mindestens das Paket "Web Station" installiert in Version 4.
  • Für die dynamische Seiten (mit Skriptsprache PHP) muss auch PHP noch installiert sein und mindestens ein Standardprofil angelegt sein. Analog PHP 7.4 inzwischen eben für PHP 8.2.
  • Lokal und/oder von Außerhalb ist die Namensauflösung (DNS) eingerichtet, so dass der gewünschte Hostnamen auf die IPv4 und/oder IPv6 der Synology Diskstation auflöst (von Außerhalb und bei IPv4-NAT die öffentliche IPv4 des Routers)
  • Lokal und/oder von Außerhalb sind die Ports 80/443 geöffnet (Firewalls im Router/Diskstation) und/oder weitergeleitet (Router, IPv4-NAT).

Anmerkung:
Die Anleitung hangelt sich an der Variante für statische Webseiten entlang und ergänzt die Teile für dynamische Seiten (mit PHP) Seite an Seite oder untereinander, wenn es sich um mehr als 1 Bild handelt.

Vorgehen:

1) Öffne die Web Station über das Menü oder das Paketzentrum

2) Im Abschnitt "Webdienst" gehe auf "Erstellen" [1].
Web Station, Erstellung eines Web-Dienstes im Abschnitt Webdienst
3) Wir wählen den Diensttyp "Statische Website" [2] und klicken auf "Weiter" [3]. Für die dynamische Website wählt man stattdessen "Website für native Skript-Sprachen" [21] und ein PHP-Profil und geht dann "Weiter" [22].
Auswahlmenü Portaltyp Auswahl Portaltyp dynamisch
4) Gehe bei Dokument-Root auf "Durchsuchen" [4] und erstelle den gewünschten Ordner wo die Daten für diesen Dienst liegen sollen [5]. Vergib noch eine Beschreibung [7] und klicke auf "Weiter" [8].
Für die dynamische Variante ebenfalls ein Name und Beschreibung und dann die Auswahl für Dokument-Root [23], Ordner erstellen [24], auswählen [25] und mit "Auswählen" bestätigen [26]. Analog zur statischen Variante.
Parameter-Eingabemaske, Namen- und Beschreibung Webdienst, Dokument-Root, http-Backend Auswahl Statische Variante, Parameter-Eingabemaske, Namen- und Beschreibung Webdienst, Dokument-Root, http-Backend Auswahl
Dynamische Variante, Parameter-Eingabemaske, Namen- und Beschreibung Webdienst, Dokument-Root, http-Backend Auswahl Dokument-Root, Ordner erstellen, auswählen und bestätigen
5) Bestätige die Eingaben / Einstellungen, klicke auf "Erstellen" [9]. In der dynamischen Variante ist dies die [27].
Übersicht Einstellungen Webdienst bestätigen Übersicht Einstellungen Webdienst dynamisch bestätigen
6) Nach Übernahme der Einstellungen wird ein Hinweis eingeblendet der dem Webserver die benötigten Leseberechtigungen für die ausgewählten Ordner verschafft. Wir bestätigen dies mit OK [10]. Analog bei der dynamischen Variante mit [29] und [28].
Hinweis-Fenster zur Bestätigung der Einräumung von Leserechten für den Webserver für die ausgewählten Ordner des Dokument-Root Listenansicht mit dem Standarddienst und dem neu angelegten Webdienst Statische Website
Hinweis-Fenster zur Bestätigung der Einräumung von Leserechten für den Webserver für die ausgewählten Ordner des Dokument-Root Listenansicht mit dem Standarddienst, der statischen Variante und der neu angelegten dynamischen Variante.
7) Im Abschnitt "Webportal" gehe auf "Erstellen" [11] und danach auf "Webdienstportal" [12]
Auswahl Portaltyp Webdienstportal
8) Wähle den zuvor erstellen Webdienst aus [13], behalte den Portaltyp "Namensbasiert" [14], wähle den Hostnamen [15] und bestätige mit "Erstellen" [16]. Für die dynamische Variante wählt man ebenfalls den passenden Webdienst [30] aus, sowie den namensbasierten Portaltyp [31] und den Hostnamen [32] und bestätigt mit "Erstellen" [33]. Die Listenansicht der angelegten Portale unterscheidet sich nicht zwischen der statischen und dynamischen Variante.
!Achtung: Es können keine identischen Hostnamen verwendet werden, auch wenn dies hier im Beispiel suggeriert wird.
Webdienstportal einrichten mit Auswahl Webdienst, Typ namensbasiert und Hostname Listenansicht mit dem neu angelegten benutzerdefinierten Portal und dem Standardportal
Webdienstportal einrichten mit Auswahl Webdienst dynamisch, Typ namensbasiert und Hostname Webdienstportal einrichten mit Auswahl Webdienst dynamisch, Typ namensbasiert und Hostname
9) Ruft man die Webseite "demo.example.com" jetzt auf bekommt man im Fall von http und einem aktiven Nur-HTTPS-Modus eine Warnung die man über "Weiter" [17] übergehen kann. Ruft man die Seite via "https://demo.example.com" auf bekommt man eine Sicherheitswarnung (weil der Namen des Standard-Zertifikats der Synology nicht zum eigenen Portalnamen / Domainnamen passt). Diese kann man über "Erweitert" [18] und "Risiko akzeptieren und fortfahren" [19] normal ebenfalls überstimmen. In beiden Fällen müsste man dann in einen Fehler 403 laufen, weil im Dokument-Root für den Dienst noch keinerlei Daten hinterlegt sind die ausgeliefert werden könnten.
Warnmeldung bei aktivem Nur-HTTPS-Modus Sicherheitswarnmeldung bei Aufruf via https wegen Namensabweichung im Zertifikat Fehler 403 wegen fehlendem Inhalt im Dokument-Root
10) Öffnen wir die "File Station" über den DSM Desktop oder das Menü sehen wir die Ordneransicht zum Virtuellen Host [20]. Der Ordner "demo" ist noch leer und soll später den Inhalt der anzuzeigenden Webseite aufnehmen.
Ansicht des Webportals und des Dokument-Root in der File Station
11) Zum Test kopieren wir in der File Station die "index.html" und den Ordner "web_images" aus dem Ordner "web" in den Unterordner "demo" und laden anschließend die Webseite neu. In beiden Fällen (http/https) sollte nun die Platzhalter Webseite geladen werden.
Ansicht der Dummy Webseite im Webbrowser
12) Die "index.html" und den Ordner "web_images" unterhalb von "demo" darf man jetzt wieder löschen in der File Station und durch eigene Inhalte ersetzen.
In der gewählten Minimalkonfiguration sollten einfache html/css Webseiten schon funktionieren.

Disclaimer: Verwendete Versionen bei Erstellung der Anleitung
DSM 7.3.2-86009
Web Station - 4.0.0-0528

---

Vielen Dank an den User Fusion für diese Anleitung!

Wenn Du Fragen zu dieser Anleitung hast, dann schau doch einfach mal bei uns im vorbei!