Nginx POST прокси не удается GET успешно - PullRequest
0 голосов
/ 26 февраля 2020

У меня nginx работает как прокси перед основным приложением. net. Веб-страница обслуживается правильно, и все запросы GET работают нормально. Однако все запросы POST завершаются с ошибкой 404.

Конфиг:

location ~ / {
  proxy_pass        http://127.0.0.1:5000;

  proxy_http_version 1.1;
  proxy_set_header Upgrade $http_upgrade;
  proxy_set_header Connection "upgrade";

  client_max_body_size 15M;

  more_clear_input_headers 'Accept-Encoding';
}

Журнал ошибок:

111.111.111.111 - - [25/Feb/2020:19:56:37 +0000] "GET /Content/favicon.png HTTP/2.0" 200 1003 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0"
111.111.111.111 - - [25/Feb/2020:19:56:51 +0000] "POST /api/encode/ASCII/dGVzdA== HTTP/2.0" 400 463 "https://example.com/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0"

Что я делаю не так?

1 Ответ

0 голосов
/ 28 февраля 2020

Решением было либо очистить заголовок Connection, либо установить его на keep-alive

location ~ / {
  proxy_pass        http://127.0.0.1:5000;

  proxy_http_version 1.1;
  proxy_set_header Upgrade $http_upgrade;
  proxy_set_header Connection 'keep-alive';

  client_max_body_size 15M;

  more_clear_input_headers 'Accept-Encoding';
}
...