Проблемы с проксированием SSL

Grigory Tuboltsev gtubolcev на mail.ru
Вт Окт 12 16:15:26 MSD 2010


Добрый день,

Пытаюсь организовать прокси с SSL, чтобы ssl-содинение создвал nginx, а 
данные по нему передавал сервер на локальном порту 8080.

В nginx.conf:

server
{
listen 443;
server_name test.abc.ru;
ssl on;
ssl_certificate /etc/certs/abc.ru.crt;
ssl_certificate_key /etc/certs/abc.ru.key;

location  /
  {
proxy_pass http://127.0.0.1:8080;
include     /etc/nginx/proxy.conf;
  }

В proxy.conf
proxy_redirect              default;
proxy_set_header            Host $host;
proxy_set_header            X-Real-IP $remote_addr;
proxy_set_header            X-Forwarded-For $proxy_add_x_forwarded_for;

Всё поначалу отлично, при заходе на https://test.abc.ru показывается 
окошко логина в мой проксируемый сервер, но при попытке авторизации 
броузер выкидывает предупреждение об уходе с зашифрованной странице и 
переходе на незашифрованную. Что логично: видимо, броузер честно 
отправляет запрос и nginx честно перенаправляет его на 
http://127.0.0.1:8080 - с установкой нешифрованного соединения.

Если я правильно понимаю, нужно переписывать nginx-ом какие-то 
заголовки, чтобы соединение устанавливалось опять на 443 порт, но не 
возьму в толк, какие и как.

Кто-нибудь может подсказать, в чём дело ? Спасибо заранее.


Подробная информация о списке рассылки nginx-ru