Apache proxypass mit einer Variablen URL mit interpolieren
Ich versuche zum einrichten eines apache-Web-server für test Zwecke. Das Ziel ist die Simulation ein loadbalancer. Der Teil, den wir versuchen zu simulieren, ist einfach das akzeptieren einer Kunden eine sichere httprequest und pass es auf (über unsichere http) der korrekte server mit proxypass. Das alles funktioniert 100%.
Das problem ist dieses: ich möchte, um dieses "load balancer" für mehrere Entwicklungsumgebungen. Um testen zu können, die server-Seite der Anwendungen, ich will proxypass zu verwenden, eine variable URL übergeben werden, wird die Client-IP-Adresse. Dies erfordert die Verwendung einer Variablen URL in der proxypass-Regel. Ich habe festgestellt, das die variable REMOTE_ADDR, aber ich kann nicht scheinen, um damit in der proxypass-Regel. Zuerst habe ich versucht die syntax der apache-website erzählte mir, zu verwenden, aber das hat nicht funktioniert (immer ein DNS-lookup-Fehler für http://REMOTE_ADDR/foobar/). Ich weiß, ich habe etwas zu tun mit der Methode Interpolieren, aber ich kann nicht scheinen, um herauszufinden, was genau das sein würde.
Diese Zeile tut, was es tun sollte, damit der server funktioniert Super:
ProxyPass /http://localhost:81/
Diese sind die Regeln, die ich versucht habe (mit der variable), die fehlgeschlagen.
ProxyPass /http://${REMOTE_ADDR}:81/
Fehler: [client 127.0.0.1] proxy: DNS-lookup-Fehler für: ${remote_addr} zurückgegeben /
ProxyPass /https://%{REMOTE_ADDR}s/
Fehler: [client 127.0.0.1] proxy: DNS-lookup-Fehler für: %{remote_addr}s zurückgegeben von /
ProxyPassInterpolateEnv Auf
...
ProxyPass /http://${REMOTE_ADDR}:81/interpolieren
Fehler: [client 127.0.0.1] Fehler beim Parsen der URL //:81: Ungültige host/port
Jemand eine Idee?
InformationsquelleAutor Jon Koeter | 2011-01-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie ersetzen Proxypass-Anweisungen durch mod_rewrite Regeln mit der [P] - code, P bedeutet, dass der proxy.
Mod_rewrite lässt Sie mehr tun, bestimmte Dinge.
ja, vielleicht, mit einem [P], aber mein Gehirn ist nicht eine mod_rewrite-engine kann ich nicht sicher sein 🙂
Dies scheint zu funktionieren! Danke Regilero!
Sie können nur
ProxyPass
auf diese Weise, aber Sie können nichtProxyPassReverse
InformationsquelleAutor regilero
Für das interpolieren Fall, es soll so sein:
Nach der Suche die ganze Nacht auf dem Internet, ich konnte keine klaren Fällen wie diesem oder jedem Antworten. Ich endlich es herausgefunden, obwohl.
etwas scheint sich verändert zu haben in die Art und Weise der apache dies tut es jetzt tut, wie die rewritemap-Linie, und die variable scheint nicht zu bekommen gesetzt
InformationsquelleAutor Alan