之前因为没怎么弄懂这个,于是总是没法再vhosts启用独立的证书,导致一直都只能有一个使用https链接,今天因为刚买了一个域名,于是将全部的vhosts都改了一下,终于弄懂是怎么回事。
官方文档一堆一堆的英文真是看得我头痛呢, 后来折腾的时候终于弄懂它说的是什么意思……
首先,你需要一个这样的设定
$SERVER["socket"] == ":443" { server.document-root = "/www/site" ssl.engine = "enable" ssl.pemfile = "/etc/lighttpd.keys/cert.pem" }
当你需要在vhosts上使用的时候,你需要这样写
$SERVER["socket"] == ":443" { ssl.engine = "enable" ssl.pemfile = "/path/to/cert.pem" $HTTP["host"] == "host1.com" { #some server setting ) } $HTTP["host"] == "server2.com" { #some server setting } }
然后,在另外的vhosts的设定里面加上
ssl.pemfile = "/etc/lighttpd/keys/certs.pem"
这样就可以覆盖掉证书的默认值从而使用不同的证书。