Обратный прокси-сервер Nginx для AWS APIGateway - PullRequest
0 голосов
/ 18 октября 2019

В моем случае я хочу направить следующий запрос http://localhost/STAGE/RESOURCE/123 на https://MyGatewayID.execute -api.us-west-2.amazonaws.com / STAGE / RESOURCE / 123

где 123 - это параметр пути

Я пытаюсь настроить обратный прокси-сервер для своего шлюза AWS API с помощью Nginx, но получаю следующие ошибки при тестировании через почтальона

Рассчитанная нами подпись запроса не соответствует предоставленной вами подписи. Проверьте свой секретный ключ доступа AWS и метод подписи. За подробностями обратитесь к документации по обслуживанию. \ N \ nКоническая строка для этого запроса должна была быть \ n'GET \ n / alpha / data / ...

Я настроил заголовки авторизации AWS с доступомключ и секрет для успешного обращения к API Gateway с почтальоном, когда я использую URL-адрес API Gateway, но когда я заменяю его на localhost, он выдает вышеуказанную ошибку

Это работает в почтальоне https://MyGatewayID.execute -api. us-west-2.amazonaws.com/STAGE/RESOURCE/123

Это не работает в почтальоне https://localhost/STAGE/RESOURCE/123

Вот моя конфигурация nginx

   server {

    listen       80 default_server;
    listen       [::]:80 default_server;
    server_name  localhost;
    root         /usr/share/nginx/html;

    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;

    location / {
            proxy_set_header Host $proxy_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass https://MyGatewayID.execute-api.us-west-2.amazonaws.com;
            proxy_ssl_server_name on;
            proxy_ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
            proxy_buffering off;
    }
...