在lighttpd

时间:2019-04-15 16:23:32

标签: ssl https lighttpd alpine ca

我正在标准Alpine Linux / 3.9.0上配置https,运行PHP / 7.2.14和lighttpd / 1.4.52(ssl)。我已经注册了域名(我称其为“ mydomain.com”),并且已经获得了ssl文件mydomain.crt,mydomain.p7b,mydomain.ca-bundle,mydomain.key和mydomain.pem。 / p>

-当我在mydomain.com:443上使用http搜索时,我会访问我的网站。

-当我在mydomain.com上使用https搜索时,连接超时。

我错误地配置了/etc/lighttpd/lighttpd.conf,我认为这与我的“ .crt”文件有关。我搜索了StackOverflow并对其进行了搜索,但是两个最有用的资源是:

https://tecadmin.net/configure-ssl-in-lighttpd-server/
https://www.digicert.com/ssl-certificate-installation-lighttpd.htm

这是在默认配置文件/etc/lighttpd/lighttpd.conf中添加/修改的:

server.port = 443
$SERVER["socket"] == ":443" {
   ssl.engine = "enable"
   ssl.pemfile = "/etc/lighttpd/mydomain.pem"
   ssl.ca-file = "/etc/lighttpd/mydomain.crt"
   server.name = "mydomain"
   server.document-root = "/var/www/localhost/htdocs"
}

我也尝试过更换
       ssl.ca-file =“ /etc/lighttpd/mydomain.crt”

       ssl.ca-file =“ /etc/lighttpd/mydomain.ca-bundle”

我期望/etc/lighttpd/mydomain.crt可以工作,但是我只能通过http(成功连接)访问端口443,而不能通过https(连接超时)访问端口443。我有一个.crt文件(mydomain.crt)。我应该将文件mydomain.ca-bundle修改为.crt文件吗?

1 个答案:

答案 0 :(得分:1)

好的,所以肇事者就是这行:

server.port = 443

我是这方面的新手,但我没有意识到您应该打开端口80和端口443才能启用https。 lighttpd默认使用80,所以我只需要注释掉这一行:

# server.port = 443

给以后的读者的注意:因此,对于https,端口80和443也必须在路由器上向前移植。