【发布时间】:2013-03-13 21:26:35
【问题描述】:
最近我从 PHP 平台迁移到基于 Java 的新系统。新网站有漂亮的 URL,例如 -
http://mysite.com/science/2013/03/22/universe-is-older-than-previously-thought
旧网站的网址如 -mysite.com/details.php?cid=37&id=239411
对于搜索引擎结果,我们需要将所有这些包含 /details.php? 的 URL 重定向到主页,例如 urlredirect.com。我一直在查看这些示例 https://www.varnish-cache.org/trac/wiki/VCLExampleRedirectInVCL 并在我的 Varnish 配置的 redirect.vcl 中提出以下内容。
在 vcl_recv 函数中 -
if(req.url~ "^/details.php?$" ) {
error 301 "Moved Temporarily";
}
但我很困惑 vcl_error 函数中应该有什么?目前是这样的-
else if(obj.status == 301 && req.url~ "^/details.php?$"){
set obj.http.Location = "http://bdnews24.com";
return (deliver);
}
我觉得就这么简单?与做过这件事的人分享经验仍然很棒。
【问题讨论】: