将MoovWeb用于大型电子商务客户端。他们希望阻止桌面用户访问移动网站。所以基本上,如果用户使用桌面浏览器并尝试访问(m.site.com),他们将被重定向到(site.com)。
必须在Tritium中进行此操作(很可能在main.ts的顶部附近),因为在JS运行时,我们将加载该站点两次(一次在m。然后再在www。)< / p>
我对使用正则表达式检查$ user_agent的路线犹豫不决,因为如果我们不匹配每个可能的移动代理,并且用户转到m。在他们无与伦比的手机上,他们将获得无限重定向(m。&gt;&gt; m。&gt;&gt;&gt; m。&gt; ...)。我知道用户代理有非常详细的Regex字符串,但是尽管它们很详细,但我们发现某些电话不再匹配的唯一方法是销售损失,这不是一种选择。
以下是我原来的Tritium测试尝试,导致重定向不使用Android或iPhone的移动用户:
match($host,/^m\./) {
match($user_agent) {
not(/(Android|iPhone)/) {
$newHost = $host
$newHost {
replace(/^m\./,"")
}
$redirect = "http://"+$newHost+$path
export("Location",$redirect)
}
}
}
答案 0 :(得分:0)
Moovweb提供了开箱即用的客户端和服务器端的重定向。建议您实现具有最少往返次数的服务器端重定向。
最佳,
Juan C.
答案 1 :(得分:0)
match($host,/m./) {
$newHost = $host
$newHost {
replace(/m./,"www.")
}
$redirect = "http://"+$newHost+$path
export("Location",$redirect)
}
试试这个。希望这对你有用,因为这对我有用。