我有一个请求,要求将多个单独的 URL 重定向到新的单独的 URL。情况如下:
**Old URL --> New URL**
old.domain.org/ --> new.domain.net/inf/site1.html
old.domain.org/#data/re/sys.html --> new.domain.net/inf/site2.html
old.domain.org/#data/rq/opr.html --> new.domain.net/inf/site3.html
我使用以下代码创建了一个重定向文件:
$HTTP["host"] == "old.domain.org" {
url.redirect = ("^/$" => "http://new.domain.net/inf/site1.html",
"^/#data/re/sys.html" => "http://new.domain.net/inf/site2.html",
"^/#data/rq/opr.html" => "http://new.domain.net/inf/site3.html"
)
}
但这对我来说不起作用;因为当我转到http://old.domain.org/#data/re/sys.html
lighttpd 重定向到http://new.domain.net/inf/site1.html#data/re/sys.html
...时它不存在。
我不是开发人员,但我认为问题出在“#”字符上。有人告诉我,那部分是 javascript 函数。那么,我该如何从旧网址转到新网址呢?
答案1
我没有使用过 lighttpd,但我想你可以尝试一下URL 百分比编码,因为 # 是 URL 中的保留字符。
尝试用 %23data 替换 #data。