我需要将所有www.domain.com永久redirect到Lighttpd中的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", ) }
问题是像http://www.domain.com/blah/的所有URL都被redirect到http://domain.com/mysite.fcgi/blah/
我需要“mysite.fcgi”重写规则,因为它将请求发送到fastcgi实例。
如何正确redirect?
如果您需要将所有请求redirect到www.domain.com/而不pipe请求path如何,只需在第三行末尾放置$ 1,如下所示:
$HTTP["host"] =~ "^www\.domain\.com$" { url.redirect = ( "" => "http://domain.com/" ) }
$1被replace为^/(.*)正则expression式的第一个匹配,在你的情况下,就是第一个斜杠后面的所有东西。