我具有以下配置
$SERVER["socket"] == ":81" {
#$HTTP["scheme"] == "http" {
$HTTP["host"] =~ ".*" {
url.redirect = (".*" => "https://%0$0")
}
}
据我所知:%0
扩展为serverip:81
。所以我需要从:81
摆脱%0
。怎么样?
但是它导致从HTTP端口81重定向到https://serverip:81,然后失败,并显示SSL_ERROR_SYSCALL
。
https://stackoverflow.com/a/62099076/3743145的答复:
* LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to 192.168.144.1:81
错误是SSL_ERROR_SYSCALL,与证书验证无关。实际上,仔细研究一下您所执行的操作表明,您正在从端口81上的纯HTTP重定向到同一端口上的HTTPS。
已解决。
$HTTP["scheme"] == "http" {
$HTTP["host"] =~ "(.*)(:[0-9]+|)$" { ## %1 contains hostname without port
url.redirect = (".*" => "https://%1$0")
}
}