Мое текущее развертывание приложения получает трафик на порт HTTP, а Nginx перенаправляет его на HTTPS. Это нормально работает.
Теперь мы планируем сделать так, чтобы другой сервер Nginx действовал как балансировщик нагрузки для этого существующего сервера Nginx, также известного как Upstreams.
Ниже приведены конфигурации, которые я пробовал
upstream web_rack {
server x.x.x.x;
}
server {
location / {
proxy_pass https://web_rack;
}
}
Но получение 502 Bad Gateway
ошибка с журналом ниже:
14.03.2017 06:23:49 [ошибка] 2402 # 2402: 5 Ошибка SSL_do_handshake () (SSL: ошибка: 140770FC: подпрограммы SSL: SSL23_GET_SERVER_HELLO: неизвестный протокол) во время установления связи SSL с восходящим потоком, клиент: 189.166.35.243, сервер:, запрос: "GET / HTTP / 1.0", восходящий поток: "https: //x.x.x.x: 80 /"
Заранее спасибо.
Кажется, что у вас что-то не так с настройками вашего восходящего потока или сервера.
Ваше сообщение об ошибке показывает, что вы пытаетесь передать https восходящему потоку на порт 80: upstream: "https://x.x.x.x:80/"
.
Следующий вопрос относится к вашему и предоставляет (почти) рабочую конфигурацию для достижения того же, что вы пытаетесь сделать: Настройте Nginx как обратный прокси с восходящим SSL.
По крайней мере, вы можете изменить свой апстрим, чтобы он читал:
upstream web_rack {
server x.x.x.x:443;
}