@fraubi
Erstmal sorry, das ich mich jetzt erst melde. Hatte gestern Abend in meinem jugendlichem Leichtsinn gesagt, ich würde dir heute Morgen antworten. Aber ich hatte den Zoo-Tag mit den Kids nicht mehr auf dem Schrim.
So, nun zu deinem Anliegen:
Es gibt wie gesagt verschiedene Möglichkeiten. Zum einen VirtualHost über Apache oder jetzt mit DSM 6 Reverse Proxy per nginx. Letzteres ist nun bereits sehr schön eingebettet und vorkonfiguriert.
Beides kannst du über die WebGUI der DSM ermöglichen, was für viele Anwendungen bereits ausreicht. Hier sind die Einstellungsmöglichkeiten aber sehr gering, sodass man schnell an Grenzen stößt.
Ich hatte mir gerade meine ganzen Webservices im LAN per vHost auf Subdomains eingerichtet, was teilweise nicht ganz ohne ist. Gerade wenn es Richtung Websocket (zB Plex Server) geht. Da hatte ich noch DSM 5.2 druff. Als das meiste soweit lief, habe ich dann morgens ein Pushup auf meinem handy erhalten, dass DSM 6 zum Update bereit steht, habe ich natürlich sofort installiert und gesehen das auch nginx vorinstalliert ist. Mittlerweile habe nun alles komplett umgestellt und kann dir aus meiner persönlichen Erfahrung nur dazu raten, ist wirklich eine sehr schicke Sache.
Man ändert hierfür unter Webstation einfach den HTTP-Backend-Server von Apache auf nginx und schon lüppt es. Apache arbeitet nun hinter nginx für php-Anfragen zB, aber dies ist bereits alles vorkonfiguriert, ich musste da nichts mehr machen. Da nginx nun Port 80 für sich beansprucht, regieren die Webseiten auf einen anderen Port, bei mir ist es 914.
Zum manuellen Anlegen von configs, lege einfach eine Datei im Ordner an: "usr\local\etc\nginx\sites-enabled\", zB: "nginx-reverse-proxy.conf". Hier ist entgegen zum Apache kein Include mehr notwendig, da alles .conf Dateien in diesem Ordner automatisch eingebunden werden.
Die Konfiguration ist hier ähnlich wie beim Apache aufgebaut.
Hier ein Beispiel zum NAS:
Rich (BBCode):
# -------------------------------------------------------------------------------------------------------
# NAS Server
# -------------------------------------------------------------------------------------------------------
server {
listen 80;
listen [::]:80;
server_name nas.meinedomaene.de;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_intercept_errors on;
proxy_http_version 1.1;
proxy_pass http://localhost:5000;
}
}
Und hier das Pendant für den Plex Server
Rich (BBCode):
# -------------------------------------------------------------------------------------------------------
# Plex Media Server
# -------------------------------------------------------------------------------------------------------
server {
listen 80;
listen [::]:80;
server_name plex.meinedomaene.de;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_intercept_errors on;
proxy_http_version 1.1;
if ($http_x_plex_device_name = '') {
rewrite ^/$ http://$http_host/web/index.html;
}
proxy_pass http://localhost:32400;
}
}
Ist hier schon etwas übersichtlicher und weniger mühsam als die vHost-Variante mit unzähligen Direktiven etc. Websocket funzt auch 1a. Die Rewrite-Rule sorgt hier zB dafür, dass ich hinter meiner URL nicht das /web eingeben muss.
Wenn du keine Subdomains zur Verfügung hast, kannst du beim server_name auch mit Pfadangaben arbeiten, zB: meinedomaene.de/nas oder meinedomaene.de/audiostation
Wichtig ist bei beiden Varianten (apache + nginx) nur, dass du den Port 80 und ggf. 443 per Portforwarding auf deinen NAS mit dem Proxy durchschleifst. Qeull-Port und Ziel-Port sind dabei jeweils identisch, können auf Wunsch aber auch abweichen. nur dann musst du das in der Config entsprechen ändern.
Dies oben sind nur zwei recht simple Beispiele um das Ganze ein wenig zu verdeutlichen. Ich bastel selber gerade noch ein wenig daran und wenn alles per HTTP steht, werde ich auf HTTPS mit Lets Encrypt umsattlen. Imo komme ich da aber nicht weiter, da ich mir beim Testen die Zertifikatssperre eingefahren habe und nun erst mal 7 Tage warten warten muss :-/
Wenn du es dennoch lieber per vHosts realisieren willst, kann ich dir da auch ein paar Tipps geben und funktionierende Beispiele geben (auch wenn ich die Audiostation nicht nutzer und daher nicht weiß wie die tickt). Aber was Performance angeht ist nginx schon eine etwas andere Liga und auch von den Möglichkeiten her. Wie gesagt gerade Richtung Websocket wirds per vHosts schwierig. Das WebIf meiner Dreambox habe ich unter vHosts noch nicht ans laufen bekommen, das der VU+ war kein Ding. Mit niginx bedarf es da keiner zusätzlich Einstellung, es funzt imo einfach alles subba ;-)
Versuchs einfach mal und bei Fragen, fragen... ;-)