У нас есть сервер, который принимает клиентские сертификаты в качестве средства аутентификации. Эта служба впоследствии запускает Apache, а затем завершает SSL и ProxyPass
перенаправляет запрос на конечную точку нашего шлюза API.
Мы заметили, что шлюз API выполняет перенаправление 301, поэтому информация о сертификате нашего клиента не передается в конечную точку, чтобы AWS Lambda могла получить к ней доступ.
Кто-нибудь знает, есть ли обходной путь?
Обновление 1
Похоже, перенаправление 301 было вызвано тем, что шлюз API перенаправляет нас на HTTPS. Проблема сейчас в том, что кажется, что если мы используем протокол https, мы получим ошибку 500?
ProxyPass /Beta/foo https://<stuff>.execute-api.eu-west-1.amazonaws.com/Beta/foo
ProxyPassReverse /Beta/foo https://<stuff>.execute-api.eu-west-1.amazonaws.com/Beta/foo
Обновление 2
Казалось бы, если мы также включим SSLProxyEngine On
и проверим Apache error_log
, мы увидим некоторые из следующих ошибок:
access to proxy:https://<stuff>.execute-api.eu-west-1.amazonaws.com/error/noindex.html failed, reason: SSL requirement expression not fulfilled (see SSL logfile for more details)
[error] (502)Unknown error 502: proxy: pass request body failed to <ip>:443 (<stuff>.execute-api.eu-west-1.amazonaws.com)
[error] proxy: pass request body failed to <ip>:443 (<stuff>.execute-api.eu-west-1.amazonaws.com) from <ip> ()
API Gateway
переадресацию 301 каждый раз? Можете ли вы предоставить пример URL? Кажется, у вас может быть не полный путь, и поэтому он выполняет перенаправление. - person adamkonrad   schedule 18.07.2015