Возможный дубликат:
Несколько SSL доменов на одном IP адресе и одном порту?
У меня проблема с Apache и несколькими SSL сертификатами. В случае, если я настраиваю его только для одного домена, все работает нормально, но когда я добавляю еще один как virtualhost, он выдает ошибку:
VirtualHost domain1.cz:443 overlaps with VirtualHost domain2.sk:443, the first has precedence, perhaps you need a NameVirtualHost directive
[Wed Nov 07 16:14:49 2012] [warn] NameVirtualHost *:443 has no VirtualHosts
Я пробовал много комбинаций методов настройки virtualhosts, но результат все равно очень похож - первый домен правильно защищен, а второй (domain2.sk) получает сертификат от первого.
Пожалуйста, не могли бы вы помочь мне с такой конфигурацией сертификата?
NameVirtualHost *:443
<VirtualHost domain1.cz:443>
ServerName domain1.cz
DocumentRoot /var/www/www.domain1.cz/htdocs/
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM
SSLCertificateFile /etc/apache2/ssl/domain1.cz/ssl.crt
SSLCertificateKeyFile /etc/apache2/ssl/domain1.cz/ssl.key
SSLCertificateChainFile /etc/apache2/ssl/sub.class1.server.ca.pem
SSLCACertificateFile /etc/apache2/ssl/ca.pem
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
CustomLog /var/www/www.domain1.cz/logs/ssl-access.log \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
LogLevel warn
ErrorLog /var/www/www.domain1.cz/logs/ssl-error.log
</VirtualHost>
<VirtualHost domain2.sk:443>
ServerName domain2.sk
DocumentRoot /var/www/www.domain2.sk/htdocs/
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM
SSLCertificateFile /etc/apache2/ssl/domain2.sk/ssl.crt
SSLCertificateKeyFile /etc/apache2/ssl/domain2.sk/ssl.key
SSLCertificateChainFile /etc/apache2/ssl/sub.class1.server.ca.pem
SSLCACertificateFile /etc/apache2/ssl/ca.pem
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
CustomLog /var/www/www.domain2.sk/logs/ssl-access.log \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
LogLevel warn
ErrorLog /var/www/www.domain2.sk/logs/ssl-error.log
</VirtualHost>
Каждый IP-адрес / порт может обслуживать только один сертификат SSL. Чтобы получить более одного SSL для работы, вам либо понадобится другой IP-адрес (рекомендуется), либо привязать второй SSL-сертификат к другому порту на вашем IP (функционально, но неудобно для посетителей вашего сайта, потому что порт имеет для включения в URL). Проконсультируйтесь с вашим хостом, большинство из них предоставляют дополнительные IP-адреса по доступной цене.
Эта ветка содержит дополнительную информацию.
Изменить: Я не умею грамматику.
вам либо понадобится другой IP-адрес (рекомендуется), либо привязать второй сертификат SSL к другому порту на вашем IP-адресе (функционально, но неудобно для посетителей вашего сайта, т.к. порт должен быть включен в URL-адрес). Уточните у своего хоста, большинство из них предоставляют дополнительные IP-адреса по доступной цене.Эта ветка содержит дополнительную информацию.
Изменить: я не умею грамматику.
вам либо понадобится другой IP-адрес (рекомендуется), либо привязать второй SSL-сертификат к другому порту на вашем IP-адресе (функционально, но неудобно для посетителей вашего сайта, т.к. порт должен быть включен в URL-адрес). Уточните у своего хоста, большинство из них предоставляют дополнительные IP-адреса по доступной цене.Эта ветка содержит дополнительную информацию.
Изменить: я не умею грамматику.
Опубликованная вами конфигурация должна быть правильной, но вы должны использовать
в обоих случаях, а не
или
.[1233 visibleВы правильно указали domain1.cz
и domain2.sk
в ServerName
.
Обратите внимание, что при этом будет использоваться функция, называемая указанием имени сервера. У вас должна быть достаточно последняя копия Apache и библиотек OpenSSL, и она не будет работать со старыми браузерами. Подробнее о SNI здесь .