Проблема с HTTPS - много сайтов на одном IP

alexandre_frolov nginx-forum на forum.nginx.org
Вт Фев 2 07:32:47 UTC 2016


На сервере есть один сайт HTTPS на порту 443 (например,
https://ssl.site.ru), и много обычных сайтов HTTP (например,
http://site2.ru, http://site3.ru и т.д.). Nginx проксирует все это в
Apache.

Проблема в том, что при попытке открыть обычные сайты HTTP через HTTPS
открывается сайт https://ssl.site.ru.
Т.е. по адресу httpS://site2.ru открывается сайт https://ssl.site.ru.

Подскажите, пожалуйста, могу ли я как-то запретить открытие сайтов
http://site2.ru, http://site3.ru и т.п. через HTTPS, настроив, например,
редирект в конфигурации nginx для сайта https://ssl.site.ru?
Буду очень благодарен за помощь!

Текущая конфигурация для сайта https://ssl.site.ru была создана ISPmanager
4, FreeBSD 9.3:

server {
                server_name ssl.site.ru www.ssl.site.ru;
                listen xxx.xxx.xxx.xxx;
                listen xxx.xxx.xxx.xxx:443 ssl;
                disable_symlinks if_not_owner from=$root_path;
                set $root_path /home/user/data/www/ssl.site.ru;
                location ~*
^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf|woff)$
{
                        root $root_path;
                        expires 7d;
                        access_log /home/nginx-logs/user isp;
                        access_log /home/httpd-logs/ssl.site.ru.access.log
;
                        error_page 404 = @fallback;
                }
                location / {
                        proxy_pass http://xxx.xxx.xxx.xxx:81;
                        proxy_redirect http://xxx.xxx.xxx.xxx:81/ /;
                        proxy_set_header Host $host;
                        proxy_set_header X-Forwarded-For
$proxy_add_x_forwarded_for;
                        proxy_set_header X-Forwarded-Proto $scheme;
                        proxy_set_header X-Real-IP $remote_addr;
                }
                location ~* ^/(webstat|awstats|webmail|myadmin|pgadmin)/ {
                        proxy_pass http://xxx.xxx.xxx.xxx:81;
                        proxy_redirect http://xxx.xxx.xxx.xxx:81/ /;
                        proxy_set_header Host $host;
                        proxy_set_header X-Forwarded-For
$proxy_add_x_forwarded_for;
                        proxy_set_header X-Forwarded-Proto $scheme;
                        proxy_set_header X-Real-IP $remote_addr;
                }
                location @fallback {
                        proxy_pass http://xxx.xxx.xxx.xxx:81;
                        proxy_set_header Host $host;
                        proxy_set_header X-Forwarded-For
$proxy_add_x_forwarded_for;
                        proxy_set_header X-Forwarded-Proto $scheme;
                        proxy_set_header X-Real-IP $remote_addr;
                }
                location ^~ /webstat/ {
                        auth_basic "Restricted area";
                        auth_basic_user_file
/home/user/data/etc/17984547.passwd;
                        try_files $uri @fallback;
                }
                location ~*
^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
                        root $root_path;
                        access_log /home/nginx-logs/user isp;
                        access_log /home/httpd-logs//ssl.site.ru.access.log
;
                        error_page 404 = @fallback;
                }
                include /usr/local/ispmgr/etc/nginx.inc;
                charset windows-1251;
                ssl_certificate
/home/httpd-cert/user//ssl.site.ru_ssl.chained.crt;
                ssl_certificate_key
/home/httpd-cert/user//ssl.site.ru_ssl.key;
                ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
                ssl_ciphers
"EECDH+AESGCM:EDH+AESGCM:ECDHE-RSA-AES128-GCM-SHA256:AES256+EECDH:DHE-RSA-AES128-GCM-SHA256:AES256+EDH:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AE
        }

Posted at Nginx Forum: https://forum.nginx.org/read.php?21,264248,264248#msg-264248



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