我目前使用 Lighttpd 作为代理向不支持 HTTPS 的应用程序添加 HTTPS 加密。
为此,我使用以下配置:
# Listen to port 443
$SERVER["socket"] == ":443" {
ssl.engine = "enable"
include "ssl-params.conf"
proxy.server = ( "" => ( ( "host" => "127.0.0.1", "port" => 80 ) ) )
setenv.add-request-header = (
"X-Forwarded-Proto" => "https",
"X-Forwarded-Host" => "hardcoded.domain.com",
"X-Forwarded-Port" => "443"
)
# Set Error/Log
server.errorlog = "/var/log/lighttpd/error.log"
}
除了一件事之外,此配置有效。我必须硬编码X-Forwarded-Host的值。直到最近这还不是问题,但现在我有多个域指向同一个代理,需要转发正确的域名。
有没有办法从传入的 HTTPS 连接中提取到主机以将正确的值提供给X-Forwarded-Host?