重定向所有页面,但Lighttpd中的一个页面

时间:2014-09-18 07:40:40

标签: regex redirect lighttpd

如何在lighttpd网络服务器上将所有页面重定向到一个HTTPS?我想出了以下内容,但它仍然重定向" /report.cgi" - 我假设因为第二个重定向条件会覆盖第一个:

# redirect HTTP
server.modules += ( "mod_redirect" )
$HTTP["scheme"] == "http" {
    $HTTP["host"] =~ ".*" {
        url.redirect = (
           "^/report\.cgi$" => "http://%0$0",
           "^/.*$" => "https://%0$0"
        )
    }
}

我需要这个,因为嵌入式设备应该能够通过HTTP联系我的Web服务器。

1 个答案:

答案 0 :(得分:4)

感谢https://stackoverflow.com/a/3522147/3415618,我提出了以下解决方案:

# redirect HTTP
server.modules += ( "mod_redirect" )
$HTTP["scheme"] == "http" {
    $HTTP["host"] =~ ".*" {
        url.redirect = (
            "^/(?!report.cgi).*" => "https://%0$0"
        )
    }
}