아파치를 HTTPS 대 HTTP 프록시로 사용


10

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>

답변:


15

우리는 비슷한 설정을 가지고 있으며 이것을 사용하고 있습니다 (물론 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/

thirdparty.com 으로 리디렉션하는 thirdparty.com을 사용하고 있다는 점에서 하나의 버그가 발견되었습니다 . 그러나 내 원래 구성도 이것으로 작동하지 않았습니다. 감사.
james_t

1
참고 SSLProxyEngine여기에 필요하지 않습니다 - 당신이 프록시 경우 필요한 것httpS://thirdparty.com/
Piskvor 건물 왼쪽

1
@Piskvor는 문서를 다시 확인한 후에는 필요하지 않습니다. 답변을 업데이트하겠습니다. 지적 해 주셔서 감사합니다.
Huygens
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.