Dann dachte ich, mit nginx könnte ich Subdomains auf virtuelle Maschinen umleiten
Ja, so funktioniert die "Reverse Proxy" -Funktion von Nginx.
Definieren server { … }
Sie auf dem Hostserver Blöcke für alle Ihre Subdomains. Verwenden Sie proxy_pass
, anstatt einen Dokumentstammpfad anzugeben, den Befehl nginx auf jede Ihrer virtuellen Maschinen. (Die virtuellen Maschinen müssen Host-Only oder Bridged-Netzwerke verwenden.)
Für Ihr Beispiel können Sie Folgendes verwenden:
server { server_name www.mysite.com; listen *:80; listen [::]:80; location / { proxy_pass http://10.8.0.10; } } server { server_name api.mysite.com; listen *:80; listen [::]:80; location / { proxy_pass http://10.8.0.20; } } etc.