0

我有一个情况。我为不支持特定浏览器的每个用户引入了使用 javascript 的网站重定向。我确信谷歌缓存将始终将主页作为缓存页面。但是,当我查看 Google 缓存页面时,我看到了一个重定向页面。据我所知,Googlebot 会忽略页面上的 javascript,因此我在关闭 javascript 并使用 Googlebot 用户代理的情况下对其进行了测试,并显示了主页。

这是javascript重定向的代码:

var 
                ua = navigator.userAgent.toLowerCase(),
                uaVersion = 0,
                isIE = !isOpera && (ua.indexOf("msie") >= 0),
                isFirefox = !!isGecko && (ua.indexOf("firefox/") >= 0),
                isChrome = !!isWebKit && (ua.indexOf("chrome/") >= 0),
                isSafari = (ua.indexOf("safari") >= 0),
                isValid = false,
                userLang = (navigator.userLanguage || navigator.language).split("-")[0].toLowerCase();

            if (isIE)
                uaVersion = parseFloat(ua.match(/msie (\d+\.\d+)/)[1]);

            if (isFirefox)
                uaVersion = parseFloat(ua.match(/ firefox\/(\d+\.\d+)/)[1]);

            if (isSafari)
                uaVersion = parseFloat(ua.match(/ safari\/(\d+(\.\d+)?)/)[1]);

            if (isChrome)
                uaVersion = parseFloat(ua.match(/ chrome\/(\d+(\.\d+)?)/)[1]);

         if (!isIE && !isFirefox && !isSafari && !isChrome)
             isValid = true;
         else 
                isValid = (isIE && (uaVersion >= 8)) || (isFirefox && (uaVersion >= 16)) || (isSafari && (uaVersion >= 5)) || (isChrome && (uaVersion >= 11));

            if (!isValid)
                window.location = ["/friendly/browser_", ".html"].join(userLang);

非常感谢您的帮助。

4

0 回答 0