Centos 6でApacheを設定して、サードパーティプロバイダーのhttpサーバーにトラフィックをプロキシおよびリバースプロキシしようとしています。
設定は次のように機能するはずです:https://mydomain.com/proxy/
はすべてのトラフィックをhttp://thirdparty.com/app/
に透過的にプロキシします
私が抱えている問題は、https://mydomain.com/proxy/
に対して行われたすべてのリクエストが応答として301リダイレクトを取得することです。
これらは私の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>
同様の設定があり、これを使用しています(もちろん、mod_proxy、mod_ssl、およびmod_proy_httpの前にロードする必要があります)。
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/