Leiten Sie die GoDaddy-Subdomain an einen anderen Port auf demselben Server weiter (Reverse Proxy)

Also hier ist die Situation: Ich habe eine Domain mit GoDaddy gekauft (Jbc.ca) GoDaddy leitet derzeit an meine No-IP-Domain weiter, da ich eine dynamische IP - Adresse habe (diese ändert sich jedoch nicht häufig-theoretisch könnte ich sie direkt an meine IP-Adresse weiterleiten).

Hier wird es etwas komplizierter. Ich führe einen Webserver (Apache) auf Port 80 aus, der beim Besuch angezeigt wird (jbc.ca) Ich habe auch mehrere andere Dienste, die auf demselben System ausgeführt werden: Plex- port 32400; Tautulli auf port 7777; Ombi auf port 5000; Lidarr auf port 8686, Remote Überall PC Zugang auf 7000 und eine separate Web Server (Microsoft IIS auf port 9024).

Um derzeit auf einen dieser Dienste außer Port 80 zuzugreifen, muss ich Folgendes tun: "http://Jbc.ca:Port#"; Um zum Beispiel auf Ombi zuzugreifen, muss ich eingeben http://jbc.ca:5000.

Ich möchte meine Domain mit Subdomains für jeden Port haben - zum Beispiel ombi.jbc.ca würde in theoretisch lade Port 5000 auf dem Server, würde aber angezeigt ombi.plex.ca anstatt die Portnummer umzuleiten und verfügbar zu machen. Ra.jbc.ca würde Port 7000 und so weiter laden...

Ich habe gelesen, dass dies sowohl mit Reverse Proxy über Apache oder Nginx (da ich mamp pro für meinen Hauptserver ausführe) als auch mit IIS möglich ist, aber ich habe keine Ahnung, wie ich dies erreichen kann Was auf dem Server geändert/hinzugefügt werden muss, welcher Server wäre am besten, um dies zu erreichen, und was ich auf meinem Hauptserver ändern müsste. GoDaddy domain.

Hoffentlich kann jemand helfen, da ich an dieser Stelle völlig ratlos bin.

Danke im Voraus.

Author: user3470774, 2019-06-11

1 answers

Dies ist im wesentlichen ein zweiteiliger Vorgang. Sie müssen die Subdomänen selbst in DNS erstellen (z. B. mit GoDaddy) und dann die virtuellen Apache-Hosteinträge erstellen, die das eigentliche Proxying durchführen.

DNS -

Unter der Annahme, dass Sie möchten, dass diese öffentlich verfügbar sind (dh außerhalb Ihres lokalen Netzwerks), müssen Sie alle relevanten Subdomains mit GoDaddy über ihre Schnittstelle erstellen. Sie müssten also erstellen:

ex. GoDaddy Subdomains

  • plex.jbc.ca
  • tautulli.jbc.ca
  • ombi.jbc.ca
  • lidarr.jbc.ca
  • ra.jbc.ca
  • iis.jbc.ca

Dies sind natürlich nur Beispiele. Die tatsächlichen Subdomains können jedem beliebigen Namensschema folgen. Jedoch ombi.plex.ca (was könnte ein Druckfehler gewesen sein?) wäre nicht möglich, in diesem Fall, sofern Sie im Besitz der plex.ca Domäne (ombi.plex.jbc.ca sollte jedoch in Ordnung sein).

Der einzige mögliche Nachteil dabei ist, dass Sie wahrscheinlich für jede Unterdomäne einen Datensatz mit Ihrer tatsächlichen IP verwenden müssen (ähnlich wie bei Ihrer primären jab.ca Domain wird wahrscheinlich nicht funktionieren).

Virtuelle Apache-Hosts

Die eigentliche Reverse-Proxy-Verwaltung wird von Apache unter einem virtuellen Host für jede Subdomäne durchgeführt.

Als beispiel: Ein virtueller Bare-Minimum-Host für Plex könnte wie folgt aussehen:

ex. Apache Virtueller Host

<VirtualHost *:80>

    ServerName plex.jbc.ca
    # ServerAlias Unneeded.for.this.example
    # DocumentRoot "C:/Unneeded/for/this/example"

    # Redirect basic requests to our Plex service.
    # This should work for logging in.

    ProxyPass / http://10.0.0.1:32400/
    ProxyPassReverse / http://10.0.0.1:32400/

    # Plex redirects us after logging in, so we need an
    # additional set of entries to handle the main Plex
    # interface.

    ProxyPass /web http://10.0.0.1:32400/web
    ProxyPassReverse /web http://10.0.0.1:32400/web

</VirtualHost>

Im obigen Beispiel sollte 10.0.0.1 durch die lokale IP des Servers ersetzt werden, auf dem der Dienst gehostet wird.

Es ist erwähnenswert, dass mod_proxy in httpd.conf aktiviert werden muss, damit ProxyPass und ProxyPassReverse korrekt funktionieren. Es gibt auch andere Proxy-Module, die auf mod_proxy angewiesen sind, und ich würde vorschlagen, mod_proxy_html und mod_proxy_http unter minimum:

ex. httpd.conf (Teilweise)

<...>
LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
#LoadModule proxy_express_module modules/mod_proxy_express.so
#LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule proxy_hcheck_module modules/mod_proxy_hcheck.so
LoadModule proxy_html_module modules/mod_proxy_html.so
LoadModule proxy_http_module modules/mod_proxy_http.so
<...>
 1
Author: Anaksunaman,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2019-06-16 03:35:24