Lighttpd 从 www.domain.com 重定向到 domain.com

Lighttpd 从 www.domain.com 重定向到 domain.com

我需要在 Lighttpd 中将所有 www.domain.com 永久重定向到 domain.com。

这是我的 lighttpd.conf 的相关部分:

$HTTP["host"] =~ "^www\.domain\.com$" {
    url.redirect = (
        "^/(.*)" => "http://domain.com/$1"
    )
}

$HTTP["host"] =~ "(^|\.)domain\.com$" {
     ...
     url.rewrite-once = (
         ...
         "^(/.*)$" => "/mysite.fcgi$1",
     )
}

问题是所有 URL 都像http://www.domain.com/blah/重定向至http://domain.com/mysite.fcgi/blah/

我需要“mysite.fcgi”重写规则,因为它将请求发送到 fastcgi 实例。

我该如何正确重定向?

答案1

如果您需要将所有请求重定向到 www.domain.com/,而不管请求路径如何,只需将第三行末尾的 $1 删除,如下所示:

$HTTP["host"] =~ "^www\.domain\.com$" {
    url.redirect = (
        "" => "http://domain.com/"
    )
}

$1用正则表达式的第一个匹配项替换^/(.*),在您的情况下,该匹配项是第一个斜杠之后的所有内容。

相关内容