Local Domain/Subdomain

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

bldneunr

Benutzer
Registriert
02. Juni 2012
Beiträge
3
Reaktionspunkte
0
Punkte
0
Hallo Leute,

leider weiß ich nicht genau nach was ich suchen soll, dementsprechend eröffne ich einen neuen Thread, der die genaue Problematik schildert.

Ich möchte gerne den Komfort in meinem Netzwerk verbessern und Projekte (vorzugsweise Webseiten) über lokale Sub-/domains ansprechen können. Das selbe soll für die gesamten Nutzer in meinem lokalen Netzwerk möglich sein. Vorab: Ihr solltet euch mit GIT auskennen.

Das Netzwerk besteht aus einem Linksys WRT160NL, an dem 3 User und der DS212 hängen. Die Projekte werden alle via Git versioniert und das Remote Repository liegt auf dem NAS in einem eigenen Folder. Jeder User hat zusätzlich sein local repository auf dem NAS in seinem eigenen Ordner (ob Privat oder nicht ist nicht so wichtig). Cloned sich ein User nun das Repository vom Remote in seinen Ordner soll dieser Ordner im LAN für jeden User über die Eingabe der Domain im Browser erreichbar sein (vorzugsweise: Projektname.Username.Repository.com). Das Remote Repository soll zusätzlich über eine abgekürzte ssh erreichbar sein (vorzugsweise: ssh://username@repository.com/Projektname).

Danke im voraus.
 
dann setzt du am besten einen DNS Server fürs LAN auf (z.B. dnsmasq von ipkg, bind gibt es zwar auch von ipkg wäre aber imho der Overkill für dein Vorhaben). Dann legst du auf dem DNS Server die entsprechenden Einträge in der /etc/hosts Datei an z.B.
192.168.100.23 meinProjekt.benutzer.repository.com
192.168.100.23 anderesProjekt.benutzer.repository.com

bin gerade nicht ganz sicher, aber ich meine man könnte auch mehrere Namen pro Zeile schreiben in /etc/hosts.
Das mit der abgekürtzten URL via ssh wird wohl am ehesten gehen wenn du pro User im ssh ein Logincert machst. Dann kannst du basierend auf dem verwendeten Cert bestimmen was weiter passieren soll. Ich kenn jetzt git nicht, aber bei svn mach ich das so: Jeder User hat sein Cert. Wenn sich UserX mit dem Cert via ssh auf svn verbinden will, dann öffnet das System eine Verbindung zum svn im Tunnelmodus und gibt noch Parameter mit (z.B. wird festgelegt welches Repos verwendet wird). Das passiert alles auf Basis des verwendeten Zerifikats. Mit Passwort-Logins geht das afaik ned
 
Hallo Jahlives,

danke für deine schnelle Antwort. Würden die DNS Weiterleitungen nicht nur auf dem Folder 192.168.100.23 landen? Allerdings befinden die sich ja in 192.168.100.23/volume1/Web/Username/Projektverzeichnis.
 
DNS kennt keine URL, nur Hostnamen und IPs. Es sorgt also nur dafür, dass du auf dem richtigen Host landest. Alles weitere musst du in der Anwendung z.B. Webserver machen. So als Idee: leg direkt in /volume1/web eine index.php an und prüfe darin den angefragten Hostnamen. Anhand des Hostnamens könntest du den Usernamen und das Projekt ermitteln und dann entsprechend weiterleiten. Das folgende einfach mal als Idee, keine Garantie:
PHP:
$url = explode('.',$_SERVER['HTTP_HOST']);
//das sollte ein Array ergeben, das den Hostnamen an . zerlegt
header('Location: http://repositories.com/'.$url[1].'/'.$url[0]);
//das sollte meinProjekt.benutzer.repositories.com nach http://repositories.com/benutzer/meinProjekt umleiten
exit();
das ist wie gesagt nur ein Bsp und setzt z.B. voraus, dass die Projektverzeichnisse genau gleich heissen wie das Projekt im Hostnamen.
Alternativ ginge es wohl auch mit einer .htaccess Datei und mod_rewrite z.B.
Code:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(.*)\.(.*)\.repositories\.com$
RewriteRule ^.*$ /%2/%1
wie beim PHP Code nur ein Bsp. ungetestet und ohne Garantie :-)
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat