从一路捞导航网(16lao.com)的UA控制的页面跳转的BUG说起

最近在地铁上看到了一路捞导航网铺天盖地的广告,想想明天就要踏上回家的火车,无事可做,于是就上上这个网站吧。


我的电脑安装的是Xubuntu系统,是个Linux操作系统,然后打开Firefox浏览器,键入16lao.com,回车。


奇迹发生了,页面从16lao.com跳转到m.16lao.com,之后又跳转到m.cn.16lao.com。


我心想,这可是个PC啊,怎么跳到移动端页面去了?

于是切换个UA吧,换成Win的UA果然没有再跳转了。




那么原因是什么呢?


先上CURL工具试试,



无论如何都会跳转cn.16lao.com的吧,继续



出代码了,估计不是header的事儿,再查查header



没有发现301,302什么的,估计是JS了。


看看源码吧,果然里面有这么一段:

<script type="text/javascript">
function checkReqUrl(){	
    var redirectUrl = "";	
    var u = navigator.userAgent;	
    if (u.indexOf('iPhone') > -1) {		
        redirectUrl="http://m.16lao.com";	
    }	
    if (u.indexOf('Android') > -1 || u.indexOf('Linux') > -1) {		
        var referrerUrl = document.referrer;  		
        var re =new RegExp("http://hd[.].+[.]16lao.com");	
        if(!re.test(referrerUrl)){				
            redirectUrl="http://m.16lao.com";			
        }	
    }	
    if(redirectUrl!=""){		
        window.location.href = redirectUrl;	
    }	
}
checkReqUrl();
</script>

于是真相就浮出水面了。


原来你家是判断UA里面的字符的,Android和iPhone也就罢了,Linux是个什么鬼?

这是鄙视Linux操作系统上网的家伙们么?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值