繁体   English   中英

MoovWeb:如果桌面用户尝试访问m.site.com,则将其重定向到桌面站点

[英]MoovWeb: Redirect desktop user to desktop site if they try to visit m.site.com

将MoovWeb用于大型电子商务客户端。 他们想阻止桌面用户访问移动网站。 因此,基本上,如果用户使用桌面浏览器并尝试访问(m.site.com),他们将被重定向到(site.com)。

必须在Tritium中执行此操作(很可能在main.ts的顶部附近),因为到JS运行时,我们将加载该站点两次(一次在m。中,然后再次在www。中)。

我不愿使用Regex来检查$ user_agent,因为如果我们不匹配每个可能的移动代理,并且用户转到m。 在无与伦比的手机上 ,他们将获得无尽的重定向(m。> www。> m。> www。> m。> ...)。 我知道有非常详细的针对用户代理的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)
        }
    }
}

Moovweb开箱即用地提供客户端和服务器端的重定向。 建议您实现往返次数最少的服务器端重定向。

这是官方文档: https : //moovwebconfluence.atlassian.net/wiki/display/DD/Mobile+Redirection#MobileRedirection-Server-SideRedirection

最好,

胡安C.

    match($host,/m./) {
            $newHost = $host
            $newHost {
                replace(/m./,"www.")
            }
            $redirect = "http://"+$newHost+$path
            export("Location",$redirect)
        }

尝试这个。 希望这对您有用,因为这对我有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM