如何重定向到移动网站,同时仍然保留查看桌面版本的选项


how to redirect to mobile site while still leaving the option open to view desktop version

我正在寻找一种将移动浏览器重定向到我的网站的移动特定版本的方法。我的问题是,我还需要在移动版本中提供一个链接,如果用户愿意,可以查看桌面网站。

我可以根据浏览器重定向,但链接到主网站只会循环回手机。

我不能使用会话变量,因为我有一个登录系统,它会破坏会话数据,从而导致用户在注销时返回移动网站。

我曾想过使用重定向脚本作为指向separe桌面主页的索引页,但这需要重组我的桌面网站,并对cms造成严重破坏。我也不确定这会对搜索引擎评分产生什么影响。

有人能想出其他好办法来处理这个问题吗?还是我必须咬紧牙关重组我的桌面网站?

当用户强制查看桌面版本发送的get参数,然后在检测到浏览器重定向到移动版本的块中检查其是否存在时,您应该设置一个cookie(而不是会话cookie)。基本(伪代码):

# set the cookie if the user want to see the desktop version
if GET[force-desktop-version]
   set_cookie(force-desktop-version = 1)
end
# check the cookie and the browser before redirecting
if NOT get_cookie(force-desktop-version) and mobile_browser_used 
   redirect_to the_mobile_version
end

不!有一个非常简单的方法来解决这个问题。您可以通过以下方式查看用户访问的最后一个页面:document.referrer
如果推荐人是移动页面以外的任何网站,则将用户发送到移动页面,如果是移动页面,则您知道他们单击了"重定向到桌面版本"链接。

在注销页面(会话数据已销毁)上,只需检查$_session['mobile']或某个变量名是否设置为1。如果设置为1,则重新启动会话,并在重定向到主页之前,在新会话中仅将该值设置为1。