Ankündigung

Einklappen
Keine Ankündigung bisher.

Apache Multiple Virtualhosts und mod_proxy problem

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Apache Multiple Virtualhosts und mod_proxy problem

    VHOST CONFIG XAMPP-LOCAL
    Localer Xampp Server mit 2 Hosts
    Läuft local, aber eigentlich nicht von Internet erreichbar.

    <VirtualHost 127.0.0.1:80>
    ServerAdmin service@me.tld
    DocumentRoot /WWW/sub1/htdocs
    ServerName sub1.local.tld
    ServerAlias www.sub1.local.tld
    </VirtualHost>

    <VirtualHost 127.0.0.1:80>
    ServerAdmin service@me.tld
    DocumentRoot /WWW/sub2/htdocs
    ServerName sub2.local.tld
    ServerAlias www.sub2.local.tld
    </VirtualHost>

    VHOST CONFIG XAMPP-INTERNET (aus dem Internet erreichbar)
    Auf dem gleichen Rechner, 2. Xampp läuft mit der Internet IP.
    Der hier holt manche Inhalte aus den local laufenden Virtualhosts per mod_proxy.
    Warum das, hier. Auf dem local laufenden ist noch php4 installiert, wegen paar alte PHP Scripts, die aber noch umgeschrieben werden müssen.
    Auf dem XAMPP-INTERNET Server lauft PHP 7.x
    Das hier ist die vereinfachte vhosts, hab natürlich mehr vhosts, die ich gern mit mod_proxy anzapfen würde.

    <VirtualHost 225.4.22.50:80>
    ProxyPreserveHost On
    ProxyPass "/" "http://sub1.local.tld/"
    ProxyPassReverse "/" "http://sub1.local.tld/"
    ServerName sub1.domain.tld
    ServerAlias www.sub1.domain.tld
    </VirtualHost>

    <VirtualHost 225.4.22.50:80>
    ProxyPreserveHost On
    ProxyPass "/" "http://sub2.local.tld/"
    ProxyPassReverse "/" "http://sub2.local.tld/"
    ServerName sub2.domain.tld
    ServerAlias www.sub2.domain.tld
    </VirtualHost>
    Problem ist, dass, egal welche der eingerichteten Virtualhosts ich aus dem Internet eingebe, es wird nur der erste Locale Virtualhost angezeigt.
    ich bekomm mit sub2.domain.tld nicht sub2.local.tld angezeigt, sondern nur sub1.local.tld

    aber wenn ich direkt die localen adressen eingeben, ohne dazwischen der proxy, wird alles richtig angezeigt. Also liegt es erst mal nicht an den localen VHOSTS

    Kann mir jemand helfen. Bin mir sicher, dass das nur eine Konfigurationsfehler ist.


  • #2
    Muss der Hostname des Proxies und des internen Hosts nicht identisch sein? ProxyPreserveHost sorgt dafür, das der Hostname erhalten bleibt, wenn der Proxy angesprochen wird, nur findet der lokale Apache unter dem (externen) Hostnamen keinen Vhosteintrag und fällt dann auf den ersten Eintrag zurück.

    The first name-based vhost in the configuration file for a given IPort pair is significant because it is used for all requests received on that address and port for which no other vhost for that IPort pair has a matching ServerName or ServerAlias. It is also used for all SSL connections if the server does not support Server Name Indication.
    https://httpd.apache.org/docs/2.4/vhosts/details.html
    Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

    Kommentar


    • #3
      Erste Xampp Installation nimmt die Anforderungen aus dem Internet.
      Und leitet diese je nach VHOST configuration und per mod_proxy an einem zweiten XAMPP Installation weiter, der die localen Virtualhosts verwaltet.
      Und je nach aufgerufenenen URL aus dem Internet, holt die Erste XAMPP Installation, die Webseite von einem (2. XAMPP Installation) LOCAL Installierten Virtualhost Gegenstück ab.
      Und nein, die namen müssen nicht gleich sein. Ich habs aber gelöst. Hab jetzt für die Localen Vhosts einfach andere IP Adressen eingerichtet.. erste locale VHOST läuft auf 127.0.0.1, und der 2. vhost läuft auf 127.0.0.2.
      Und die localen Server, und die Hostnames fleissig in die hosts Datei eingetragen. Funktioniert super...

      Es liegt für mich eindeutig an der NamensAuflösung Problem des mod Proxys.. 2 hosts auf dem gleichen IP akzeptiert er nicht
      Entweder müssen von mod Proxy angesprochenen Hosts 2 verschiedene IP oder Verschieden Ports haben.

      Kommentar

      Lädt...
      X