0

我们正在开发我们网站的移动版本。由于各种原因,我们正在通过用户代理检测来调查“相同的 URL,不同的内容”结构。没有问题,我们很乐意根据 UA 设置设置 cookie,并使用此 cookie 来确定要使用的内容/css/etc。

问题是,我们希望提供从移动页面返回桌面版本的链接,反之亦然。我们不想仅仅链接到主页,而是到同一个页面,只是在另一个环境中。

我们正在考虑让链接包含一个 $_GET 参数

<a href="....html&mob=1">...</a> //mobile page, user wants desktop, AND
<a href="....html&mob=2">...</a> //desptop page, user wants mobile

然后在我们的 prepend 中,我们将检查 $_GET 参数,如果找到,取决于它的状态,设置或取消设置我们的 cookie,然后重定向到 HTTP_REFERRER(与它们刚打开的页面相同)。

问题是,有谁知道这将如何影响 SEO/机器人?

是否有在同一网址上提供不同内容的最佳做法,并且有指向其他版本的链接。

任何投入将不胜感激。提前致谢!

更新 - 我们用于检测移动用户及其选择的代码

// First page load, redirect if mobile
if(!isset($_SESSION['mobile'])){
    // SCRIPT SOURCED FROM: http://code.google.com/p/php-mobile-detect/
    include_once(INCL_PREP . "lib/Mobile_Detect.php");
    $detect = new Mobile_Detect();
    // if mobile device, but NOT tablet (they handle desktop versions just fine!)
    if ($detect->isMobile()  && !$detect->isTablet()) {
    $_SESSION['mobile'] = 1;
    $redirectURL= ...; // code removed for sake of space and relevancy
    header("location:$redirectURL");
}else{
    $_SESSION['mobile'] = 2;
}
// Get the $_SESSION['mobile'] status by the $_GET parameter
if($_GET['mobile'] == "on"){
     $_SESSION['mobile'] = 1;
}else{
        $_SESSION['mobile'] = 2;
}

因此,移动版有 $_GET 一个 get 参数,使用它和 $_SESSION 我们可以在页面加载时自动重定向,并且它们还可以毫无问题地在移动版和桌面版之间切换。

感谢输入的人。

4

1 回答 1

2

“从技术上讲”,您没有使用“相同的 URL”——查询字符串变体实际上被搜索机器人视为不同的 URL。

如果您尝试为移动/桌面用户管理不同的 URL,并希望确保 Google“看到”正确的版本,请阅读以下资源:https ://developers.google.com/webmasters/smartphone-sites/details

一半是关于如何使用的解释rel="alternate"以及rel="canonical"您所描述的场景。

于 2012-10-03T11:48:14.740 回答