default ssl виртуальный хост в Apache нужен когда с одного сервера работают сайты доступные по http и https.
При использовании SSL сертификатов для на серверах, на которых применяется Apache2 для всех сайтов иногда начинает отдаваться один и тот же сертификат. Это встречается когда на одном сервере существует ряд сайтов, работающих по http, затем для одного из ресурсов подключается сертификат и настраивается переадресация на https.
Файл /etc/apache2/ports.conf для настройки default ssl
Чтобы избежать этого явления нужно привести конфигурационный файл ports.conf к следующему виду:
# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default
# This is also true if you have upgraded from before 2.2.9-3 (i.e. from
# Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and
# README.Debian.gz
NameVirtualHost *:80
Listen 80
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
NameVirtualHost *:443
Listen 443
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
</IfModule>
Самое важное здесь:
NameVirtualHost *:443
Listen 443
Благодаря данным директивам запросы правильно распределяются между виртуальными хостами и сертификат отдается корректно только для того сайта, для которого он приобретен (или выпущен бесплатно). Для всех остальных сайтов при обращении по https будет отдаваться стандартная заглушка из текста которой следует, что веб-сервер функционирует нормально.
В зависимости от конфигурации Apache может потребоваться создание или корректировка виртуального хоста, используемого по умолчанию, а также его активация.
Если виртуальный хост не активирован он активируется командой, приведенной ниже:
a2ensite default-ssl
Найти файл виртуального хоста можно по адресу /etc/apache2/sites-availible/default-ssl, иногда он называется default-ssl.conf. Файл присутствует по умолчанию и размещается в каталоге при установке пакета с Apache2
Содержимое файле стандартного виртуального хоста Apache для SSL:
Конфигурация проверяется
apache2ctl configtest
Затем веб-серверу дается команда на перечитывание конфигурационных файлов
service apache2 reload
Или apache2 просто перезапускается
/etc/init.d/apache2 restart
Перезапуск apache2 или перечитывание конфигурационных файлов необходимо как при активации стандартного (default ssl) виртуального хоста, так и просто при редактировании файла ports.conf
Читайте про настройку nginx и apache для совместной работы.