HTTPS重定向在Lighttpd中不起作用

时间:2014-03-28 15:01:50

标签: lighttpd

我需要在lighttpd中将https://www.mysite.com/folder/subfolder重定向到https://www.mysite.com/folder/。我尝试过以下方法:

$HTTP["host"] =~ "https://www.mysite.com/folder/folder" {
  url.redirect = (
    ".*" => "https://www.mysite.com/folder/" 
  )
}

但它不起作用。

有人可以告诉我Lighttpd中的正确语法吗?

感谢。

1 个答案:

答案 0 :(得分:1)

这可能是因为mod_redirect模块不可用(默认情况下通常会禁用)。

  1. 如果您在UNIX平台上打开 modules.conf ,可能在/ etc / lighttpd中(在Windows上,设置在lighttpd.conf中)。
  2. 查找 server.modules 并取消注释 mod_redirect
  3. 然后将重定向规则添加到 lighttpd.conf 。我以稍微不同的方式实现了我的规则 - 我将给定主机的所有http://请求重定向到他们的https://等效。
  4. <强>的modules.conf

    server.modules = (   
        "mod_access",  
        "mod_proxy",
        "mod_accesslog",  
    #   "mod_alias",  
    #   "mod_auth",  
    #   "mod_evasive",  
        "mod_redirect",  
        "mod_rewrite"  
    #   "mod_setenv",  
    #   "mod_usertrack",  
    ) 
    

    <强> lightttpd.conf

    $HTTP["scheme"] == "http" {
        $HTTP["host"] =~ "^subdomain.server.com" {
            url.redirect = (".*" => "https://%0$0")
        }
    }