我正在标准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文件吗?
答案 0 :(得分:1)
好的,所以肇事者就是这行:
server.port = 443
我是这方面的新手,但我没有意识到您应该打开端口80和端口443才能启用https。 lighttpd默认使用80,所以我只需要注释掉这一行:
# server.port = 443
给以后的读者的注意:因此,对于https,端口80和443也必须在路由器上向前移植。