Назад | Перейти на главную страницу

Настройка базового прокси с https на http через Apache

Мне нужно проксировать удаленный API https://example.com/api/

быть доступным локально как http://localhost/api/

Я пробовал вставить эту строку httpd.conf:

 ProxyPass     /api/     https://example.com/api/

Я проверил, что эти модули включены:

 ssl_module, proxy_module, proxy_http_module  

Когда я пытаюсь достичь http://localhost/api/, Я получаю 500 Internal Server Error, и что я вижу в error_log является:

[Wed Jan 14 16:42:04.788401 2015] [proxy:warn] [pid 21916] [client ::1:59260] AH01144: No protocol handler was valid for the URL /api/v1/ads. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.  

Мой вопрос относительно этого: https://stackoverflow.com/questions/1997001/setting-up-a-basic-web-proxy-in-apache. На самом деле, когда я пытаюсь проксировать http-ресурсы, у меня все работает, поэтому проблема где-то вокруг SSL.

Причина, по которой я хочу, чтобы это работало, - это Access-Control-Allow-Origin проблема, с которой я сталкиваюсь при работе с удаленным api локально.


ОБНОВИТЬ

Вот весь файл conf. https://www.dropbox.com/s/mkrxna4h2o9yu8k/httpd.conf?dl=0

Это должно быть все, что вам нужно:

RewriteEngine On
RewriteRule ^/api/(.*)$ https://example.com/api/$1 [P,QSA,L]

Apache будет в основном проксировать ваши запросы, создавая новые HTTP-запросы через модуль mod_rewrite, который включен по умолчанию.