我正在尝试创建更“干净”的最小配置。
在我的默认SSL 中:
<VirtualHost _default_:443>
ServerName example.co
DocumentRoot /var/www/html/example
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/example.co/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.co/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.co/chain.pem
</VirtualHost>
<VirtualHost *:443>
ServerName example2.co
DocumentRoot /var/www/html/example2
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/example2.co/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example2.co/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example2.co/chain.pem
</VirtualHost>
<VirtualHost *:443>
ServerAlias subdomain1.*
DocumentRoot /var/www/html/example/subdomain1
</VirtualHost>
<VirtualHost *:443>
ServerAlias subdomain2.*
DocumentRoot /var/www/html/example/subdomain2
</VirtualHost>
但是,example2证书不会扩展到任何子域或其他虚拟主机。
我正在将多个域(example.co和example2.co)用于每个域的通配符证书。
我也有多个具有相同文档根目录的子域(即sub.example.co和sub.example2.co具有相同的根目录)。
由于某些原因,默认:443上的证书会扩展到所有子域。但是对于example2.co,它不会扩展example2.co证书。
所以sub.example.co是安全的,而sub.example2.co是不安全的。
如果我添加ServerAlias * .example2.co,则所有文档根目录都会变得不正确。因此,我需要创建数十个虚拟主机组合才能使其正常工作。
我正在努力避免一遍又一遍地复制相同的内容。
我希望所有子域在使用与其顶级域名(TLD)相关联的证书时都具有文档根目录。
apache是否可以以最少的代码应用基于TDL的证书,同时应用基于子域的文档根目录?