我设法在 cPanel/WHM 下很好地配置了它,但在 Virtualmin 下配置它时遇到了麻烦:当我在 Virtualmin 中创建新的虚拟服务器时,我希望它自动创建一个带有共享通配符 SSL 域的子域的 Apache。因此,例如,如果我为 some.example.com 创建虚拟服务器,我希望二虚拟主机:
<VirtualHost 1.2.3.4:80>
ServerName some.example.com
ServerAlias www.some.example.com some_example.shared-ssl-domain.com
...
</VirtualHost>
<VirtualHost 1.2.3.4:443>
ServerName some_example.shared-ssl-domain.com
...
SSLEngine on
SSLCertificateFile /path/to/shared-ssl-domain.com.crt
SSLCertificateKeyFile //path/to/shared-ssl-domain.com.key
SSLCACertificateFile /path/to/shared-ssl-domain.com.cabundle
</VirtualHost>
在 cPanel/WHM 中,我可以轻松完成此操作,因为模板文件包含<VirtualHost>
和</VirtualHost>
指令。但是 Virtualmin 的模板现在包含。有什么方法可以设置 Virtualmin 来执行我想要的操作吗?
答案1
我最终创建了一个 Ruby 脚本,并将其配置为在对虚拟服务器进行任何更改后作为处理程序运行。脚本的核心部分如下:作为这个问题的答案,但它基本上做的是找到给定域的 VirtualHost 文件,找到标签内的所有指令<VirtualHost>
,并将它们复制到<Virtualhost>
配置为使用通配符证书的新标签中。