Domain mit Verzeichnis verbinden?

2 Antworten

Du musst zunächst einmal eine Domain registrieren. Nennen wir sie example.com. (domain.de ist ein schlechtes Beispiel, weil vergeben. Man sollte als Beispiel oder Platzhalter immer Domainnamen verwenden, die dafür explizit vorgesehen sind und nicht vergeben werden.)

Bei dem Provider, über den Du die Domain registriert hast, richtest Du eine Subdomain ein: sub.example.com. Im DNS des Providers trägst Du für diese Subdomain die IP-Adresse des Nextcloud-Servers in Form eines A-Records (IPv4) und eines AAAA-Records (IPv6) ein.

In der Konfiguration des Webservers trägst Du nun ein:

ServerName sub.example.com
DocumentRoot /var/www/nextcloud

Das ist die Syntax für Apache 2, für andere Webserver gibt es sinngemäße Konfigurationsmöglichkeiten.

Du setzt einen A-Record bei Cloudflare auf deine IP

Dort lässt du den Webserver/Reverse Proxy, der dahinter steht, auf den Pfad zu deiner nextcloud weiterleiten

Edit: Um es dir an meinem Anwendungsfall zu zeigen (mit Reverse Proxy). Du könntest natürlich auch in deinem Webserver direkt einstellen, dass er auf die Subadresse reagieren soll und auf nextcloud zeigt

Intern habe ich die Nextcloud auf der IP 192.168.43.31 laufen - sowohl über HTTP als auch HTTPS. HTTPS läuft mit einem selbst signierten Zertifikat. Ich habe Nextcloud so konfiguriert, dass es auch über die IP selbst hört und nicht nur auf IP/nextcloud. Das ist eine einfache Konfiguration in den Dateien von Apache

Mein Reverse Proxy, welcher die Portfreigaben für 80 und 443 erhält und dadurch alles durchreicht, ist Nginx Proxy Manager - dort habe ich ein Origin Certificate von Cloudflare eingebunden, um darüber das SSL nach außen abzuwickeln (mit gültiger, öffentlicher Signierungsstelle)

Der Eintrag ist intern bei mir als Proxy Host folgenderweise eingetragen (neu angelegter Eintrag mit example.com statt meiner realen Domäne):

Bild zum Beitrag

Wenn jetzt also eine Anfrage von extern über nc.example.com eingeht, wird das intern an 192.168.43.31 an Port 443 durchgereicht - hier könntest du vermutlich auch das mit dem genauen Pfad angeben

Damit ist das lokale Netzwerk fertig konfiguriert. Jetzt fehlt noch der DNS-Eintrag bei Cloudflare

Dafür setze ich dort einen neuen A-Record für meine gewünschte Subdomain (nc.example.com), die auf meine IP zeigt (hier mal weggelassen):

Bild zum Beitrag

Jetz kann ich von einem beliebigen Browser auf nc.example.com zugreifen und werde auf meine interne Nextcloud weitergeleitet

Woher ich das weiß:Hobby – Eigenes Homelab - Netzwerk, Firewall, Server, Domain usw.
 - (Computer, Internet, Webseite)  - (Computer, Internet, Webseite)

NumNums 
Fragesteller
 28.11.2021, 12:44

Wenn ich ein A record mache und bei ip den pfad dahinter eingebe
ip/nextcloud
Dann wird das rot und lässt mich nicht speichern

0
xxxcyberxxx  28.11.2021, 12:45
@NumNums
Wenn ich ein A record mache und bei ip den pfad dahinter eingebe
ip/nextcloud
Dann wird das rot und lässt mich nicht speichern

Weil das auch nicht mit DNS funktioniert. Lies meine Antwort nochmal durch:

A Record auf IP und dann über den Webserver/Proxy, der dahinter sitzt, auf die Nextcloud verweisen lassen

1
Lezurex  28.11.2021, 13:00
@NumNums

Als Wert setzt du nur die IP, nicht die gesamte URL. Sprich: XXX.XXX.XXX.XXX

1
NumNums 
Fragesteller
 28.11.2021, 13:09
@Lezurex

Das habe ich ja die Domain funktioniert aber würde ja ganz gern eine subdomain dafür nutzen ist das möglich?

0
Lezurex  28.11.2021, 13:11
@NumNums

Dafür setzt du den Namen des Eintrages auf die gewünschte Subdomain. Also zum Beispiel sub für sub.domain.de

0
xxxcyberxxx  28.11.2021, 13:12
@NumNums
Das habe ich ja die Domain funktioniert aber würde ja ganz gern eine subdomain dafür nutzen ist das möglich?

ich editiere gerade meine Antwort mit einem Beispiel, kommt gleich

0
NumNums 
Fragesteller
 28.11.2021, 13:12
@Lezurex

Das bedeutet ja aber das wenn ich sub.domain.de eingebe dann komme ich auf die ip und nicht das verzeichnis richtig?

0
Lezurex  28.11.2021, 13:15
@NumNums

Genau. Wenn du auf ein anderes Verzeichnis willst musst du zum Beispiel im Apache Webserver einen separaten Vhost definieren.

0
xxxcyberxxx  28.11.2021, 13:21
@NumNums
Das bedeutet ja aber das wenn ich sub.domain.de eingebe dann komme ich auf die ip und nicht das verzeichnis richtig?

jup, das zeigt dann - wie gesagt - auf die IP. DNS kann auch nicht einem Pfad folgen, dafür ist es nicht gemacht. Das musst du intern regeln - im Webserver oder in vorhergehenden Servern, die die Verbindung von extern entgegennehmen.

Hab jetzt mal ein Beispiel an meine ursprüngliche Antwort angehängt

0