Назад | Перейти на главную страницу

Включение SSL на поддомене

У меня уже есть SSL, работающий в основном домене для моего сайта, но когда я использую следующую конфигурацию, SSL не будет работать на поддомене. Следует ли мне заменить * на имя поддомена или что-то в этом роде?

#
#  domain.com (/etc/apache2/sites-available/domain.com)
#
<VirtualHost *:80 *:443>
 ServerAdmin webmaster@domain.com
 ServerName  www.domain.com
 ServerAlias domain.com
 ServerAlias XX.XX.XX.XX

 # Directory Root.
 DocumentRoot /sites/domain.com/www/

 # CGI Directory
 ScriptAlias /cgi-bin/ /sites/domain.com/cgi-bin/
 <Location /cgi-bin>
   Options +ExecCGI
 </Location>

 # Logfiles
 ErrorLog  /sites/domain.com/logs/error.log
 CustomLog /sites/domain.com/logs/access.log combined

 # Enable SSL
 SSLEngine On
 SSLCertificateFile  /sites/domain.com/ssl/star_domain_com.crt
 SSLCertificateKeyFile /sites/domain.com/ssl/domain.key
 SSLCertificateChainFile /sites/domain.com/ssl/DigiCertCA.crt
 SetEnvIf User-Agent ..*MSIE.*. nokeepalive ssl-unclean-shutdown
</VirtualHost>


#
#  support.domain.com (/etc/apache2/sites-available/support.domain.com)
#
<VirtualHost *:80 *:443>
 ServerName support.domain.com
 ServerAlias support.domain.com:443

 # Enable SSL
 SSLEngine On
 SSLCertificateFile  /sites/ikeyless.com/ssl/star_domain_com.crt
 SSLCertificateKeyFile /sites/ikeyless.com/ssl/domain.key
 SSLCertificateChainFile /sites/ikeyless.com/ssl/DigiCertCA.crt
 SetEnvIf User-Agent ..*MSIE.*. nokeepalive ssl-unclean-shutdown

 # Directory Root.
 DocumentRoot /sites/support.domain.com/www/

 # Logfiles
 ErrorLog  /sites/support.domain.com/logs/error.log
 CustomLog /sites/support.domain.com/logs/access.log combined
</VirtualHost>

Обновить

Я бы хотел, чтобы этот единый сертификат SSL (это сертификат с подстановочными знаками) работал в основном домене и всех поддоменах (включая support.domain.com и live.support.domain.com). Как мне получить эту настройку?

Вы можете запустить только один веб-сайт SSL для каждого IP-адреса с HTTP 1.1, поскольку заголовок HOST зашифрован внутри запроса, поэтому сервер не знает, на какой vhost он нацелен, пока он не будет расшифрован.

Если у вас более одного IP-адреса, замените где xxx.xxx.xxx.xxx - IP-адрес в обоих, и он должен работать, но попробуйте configtest:
/etc/init.d/httpd configtest или просто перезапустите apache, если это не рабочий сервер.