Apache SSL цепочка недействительных сертификатов с "https://www"

Мой сайт имеет SSL-сертификат, установленный для виртуального хоста в моей настройке Apache. Перенаправляет http в https и https://sitename.com/ работает, но по какой-то причине, когда пользователь явно набирает www, " https://www.sitename.com/", я получаю ошибку недействительного сертификата.

http://www.sitename.com работает, но как только вы используете https, все ломается.

Это часть моей конфигурации apache для виртуального хоста.

<VirtualHost *:80>
ServerName sitename.com
RedirectMatch permanent ^/(.*)$ https://sitename.com/$1
</VirtualHost>

<VirtualHost *:80>
ServerName catch-all.sitename.com
ServerAlias *.sitename.com
RedirectMatch permanent ^/(.*)$ https://sitename.com/$1
</VirtualHost>

<VirtualHost *:443>
ServerName sitename.com
Header always set Strict-Transport-Security max-age=31536000
SSLProxyEngine on

1 ответ

Решение

httpd не знает, каково имя хоста в заголовке хоста, пока не произойдет процесс расшифровки, поэтому, если исходный запрос не совпадает с именем хоста в сертификате, вы получите ошибку.

Если вы хотите, чтобы оба домена работали с https, вам потребуется:

  1. 2 x IP-адреса с 2 отдельными сертификатами, каждый из которых связан с IP-адресом

  2. Подстановочный сертификат, который работает с обоими доменами

Подстановочный знак - лучший вариант, но я предполагаю, что вы не купили один из них, и что у вас есть сертификат, специфичный для "sitename.com"

Другие вопросы по тегам