Використовуйте apache як HTTPS для HTTP-проксі


10

Я намагаюся налаштувати Apache на Centos 6 для проксі-сервера та зворотного проксі-трафіку на 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/
здійснили приступ

1
@Piskvor дійсно після перевірки документації ще раз, в цьому випадку це не потрібно. Я оновлю відповідь. Дякую, що вказали на це.
Гюйгенс
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.