Verwenden Sie Apache als HTTPS-zu-HTTP-Proxy


10

Ich versuche, Apache unter Centos 6 so zu konfigurieren, dass Proxy- und Reverse-Proxy-Verkehr zu einem http-Server eines Drittanbieters übertragen wird.

Das Setup sollte folgendermaßen funktionieren: https://mydomain.com/proxy/ Proxys alle Daten transparent an http://thirdparty.com/app/

Das Problem, das ich habe, ist jede Anfrage, https://mydomain.com/proxy/eine 301-Weiterleitung als Antwort zu erhalten.

Dies sind alle Proxy-bezogenen Optionen in meinem VirtualHost

SetOutputFilter proxy-html
ProxyHTMLExtended On
ProxyRequests Off
SSLProxyEngine On

<Proxy *>
Order deny,allow
Allow from all
</Proxy>


ProxyPass /proxy/ http://thirdparty.com/app/
<Location /proxy/>
        ProxyPassReverse /
        ProxyHTMLEnable On
        ProxyHTMLURLMap http://thirdparty.com/app/ /proxy/
        ProxyHTMLURLMap / /proxy/
</Location>

Antworten:


15

Wir haben ein ähnliches Setup und verwenden dieses (natürlich müssen Sie vor mod_proxy, mod_ssl und mod_proy_http laden):

ProxyRequests Off
# SSLProxyEngine On # only required if the proxied service would be HTTPS as well
                    # Meaning if we would reverse proxy https://thirdparty.com/app/
                    # Thanks @Piskvor for the clarification.

<Proxy *>
  Order deny,allow
  Allow from all
</Proxy>


ProxyPass /proxy/ http://thirdparty.com/app/
ProxyPassReverse /proxy/ http://thirdparty.com/app/
<Location /proxy/>
  ProxyPassReverse /
  Order deny,allow
  Allow from all     
</Location>
Header edit Location ^http://thirdparty.com/app/ https://thirdparty.com/app/

Ich habe einen Fehler darin gefunden, dass ich Drittanbieter verwendet habe, der zu Drittanbieter weiterleitet . Meine ursprüngliche Konfiguration funktionierte jedoch auch nicht damit, Ihre auch. Vielen Dank.
James_t

1
Beachten Sie, dass SSLProxyEnginedies hier nicht erforderlich ist - dies wäre erforderlich, wenn Sie einen Stellvertreter hättenhttpS://thirdparty.com/
Piskvor das Gebäude

1
@Piskvor in der Tat, nachdem die Dokumentation erneut überprüft wurde, ist es in diesem Fall nicht erforderlich. Ich werde die Antwort aktualisieren. Vielen Dank für den Hinweis.
Huygens
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.