Я настраиваю SSL для нового сервера и исхожу из того, как я настроил его на предыдущем сервере. Я заметил что у меня SSLCertificateFile
, SSLCertificateKeyFile
, и SSLCertificateChainFile
указаны в двух разных местах. У меня это в моем ssl.conf
файл (который включен из httpd.conf
файл), а также он у меня внутри <VirtualHost *:443>
блок внутри httpd.conf
файл.
Нужны ли мне эти три настройки в обоих местах или достаточно одной? Есть ли какое-либо влияние на производительность одного по сравнению с другим?
Вам не нужны эти настройки в обоих местах. Для одного сайта не имеет особого значения, какой из них вы используете, и нет разницы в производительности.
В конфигурациях с несколькими площадками это очень важно. Например, если у вас есть два сайта a.example.com и b.example.com, идеальным вариантом будет один сертификат * .example.com, определенный на уровне сайта.
С другой стороны, если у вас есть два сайта a.example.com и b.contoso.com, вам нужно указать эти сертификаты на уровне виртуального хоста, поскольку они не могут совместно использовать сертификаты и оставаться действительными.
Записи определения SSL могут находиться внутри VirtualHost, чтобы предоставить сертификат только для theat VirtualHost. Это, конечно, становится полезным, когда вы хотите обслуживать более одного сайта с помощью SSL и у них разные сертификаты.
Конфигурация также может иметь сертификат SSL по умолчанию, который он использует для любого VirtualHost, который явно не указывает сертификат.