Сайт по https:// открывает default сертификат/сайт. Как убрать это?

Здравствуйте.
Имеется впс, на нём установлен apache.
В апаче сконфигурирован дефолтный хост на 80 и 443 порту
пример 443 порта:
<VirtualHost _default_:443>
	ServerName default
	ServerAdmin webmaster@localhost
	DocumentRoot /var/www/html

	ErrorLog ${APACHE_LOG_DIR}/error.log
	CustomLog ${APACHE_LOG_DIR}/access.log vhost_combined

	SSLEngine on
	SSLProtocol all -SSLv2
	SSLCertificateFile    /etc/apache2/ssl/server.pem
	SSLCertificateKeyFile /etc/apache2/ssl/server.key
</VirtualHost>


Так же имеется сайт example1.com, который имеет виртуалхост на 80 и 443 порту.
Так же имеется сайт example2.com, который имеет виртуалхост только на 80 порту.
Если зайти на сайт https://example2.com (то есть 443 порт), то откроется дефолтная конфигурация - <VirtualHost _default_:443>

Возник вопрос: как сделать так, что бы по https://example2.com не было ничего?
Спасибо.
  • Вопрос задан
  • 90 просмотров
Решения вопроса 1
гы щя разметаю
ответ никак

тут все просто
Поскольку весь интернет это один большой костыль на костыле костылем погоянющий
мы имеем в свое время небыло идеи в tcp/ip иметь что-то кроме цифр
когда встал вопрос RFC уже был написан
так что мы получили службу днс как костыль к буквенным айпишникам.
Теперь когда встал вопрос о конечности IPv4 да и даже немного до этого в апаче встал воопрос как повешатьдва сайта на один порт и айпи
что естественно не соответствует RFC или порт или айпи
собственно нашлось отличное решение, апачь разбирает ТВОЙ http reffery (от браузера клиента) выбирает из него домен и на основание этого подставляет нужный тебе конфиг в соответствие с ServerName
но потом появился еще один костыль SSL
который занимает свой порт, теперь барабанная дробь.....

Ты открыл порт 443 и повешал на него 1 сайт
НО айпи открыт Порт открыт и это апач
По какой причине при обращение по 2 домену он должен его послать в лес ?
Как ты думаш по SSL что вначале? Gередача данных по каналу или ключь от него?
правильно ключ.
Следоватлеьно веб сервер физически не может знать послать ли тебя лесом или нет ибо рефери твой он не может забрать без ключа а ключа нет пока нет рефера.

По этому
как только у тебя на сервере появляется 1 сайт с ssl
все остальные сайты тоже получают ssl
Но ты скажешь я же не дал им ключа. Да только он не может по этому каналу ни байта информации получить включая че за сайт.
И тут веб сервер делает ооооочень логичное решение.
Он берет Ближайший ключ, ближайший по буквам например 000-default.conf
берет эти ключи и вставляет их всем сайтам к которым он ключи не смог найти сразу-же.
Вот такая логика брат.

Что делать
отключить ссл на 1 из сайтов физически не возможно
Можно сделать следующее
1 сертификат по сортировке имени должен быть дефолтным.
и в дефолтном конфиге должно отдаваться код 400 на все запросы.

не забудь поставить галочку что решено.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы