曾经写过关于手机网站的SEO优化方向,但是多数是注重在移动网站代码方面,而把移动和PC的重点关系优化给忽略了,这方面也是很多做SEO优化站长给忽略的一些事情。

2015年11月6日,在百度站长平台可以提交移动适配,并且使用301定向做跳转适配,简单说用户使用手机访问PC页面,自动301转向到PC对应的移动页面。这种跳转适配,最好使用301或302定向,不使用JS。为什么不使用JS跳转?1、百度不任何JS跳转,百度认可301或302定向;2、JS跳转前,要打开很多东西,然后再进行跳转,本来手机网速就慢,你还让用户干着急;3、很多浏览器拦截JS,让JS跳转不能生效。

http://www.admin5.com/article/20151207/636435.shtml

PC网站和移动网站对应的关系有三种:

第一种如同我博客一样, URL和模版都是使用同一个,根据用户设备尺寸大小自动调整。
第二种URL不一样,模版不一样,但内容一样,久闻网就是这样做的。
第三种URL一样,但是模版不一样,判断用户所用的浏览器生成不同的HTML模版。

  

目前来讲移动和PC的网站对应关系只有这三种,如果遇到第四种,比如内容不一样、URL不能对于、模版不一样,出现这种情况的网站,那么这个移动站点压根就没办法和PC站点对应起来,自然也考虑独立优化了,那么这三种形式的对于分别如何对应起来呢。

第一种:自动响应

自动响应的网站理论上是不需要对应的,全自动对应起来的,但是由于早期百度无法认识到自动响应的网站,所以导致了大多网站都使用了第三方网站模版做移动网站,但是百度最近发出公告,说明自动响应网站对移动站点优化有一定的好处,另外一个自动响应的网站相对而言管理更简单,但是也需要在自动响应的网站上做mata申明。

<meta name="applicable-device"content="pc,mobile">
表示页面同时适合在移动设备和PC上进行浏览。

  

另外一个是为了让图片跟着自动响应变动大小,所以建议在网站的头部加上<picture>元素处理自适应图片:
<meta name="viewport" content="width=device-width, initial-scale=1.0">

  

第二种:跳转适用

跳转适用是通过判断用户使用的设备来自动跳转到对于的模版中,比如手机访问即会跳转到手机网站中,这种做法其实是很早以前的手机网站模版进行改版过来的,缺点非常多,优点没几个,所以能够不适用这种形式就不使用。

跳转的方式大多是使用JS来判断手机网站和PC网站访问。其实这是不符合搜索引擎优化的做法,也是不利于用户体验的做法,为什么呢,第一搜索引擎无法识别JS,百度官方的说法是百度爬虫不支持JS渲染,所以无法发现JS的重定向,第二个是用户在浏览PC网站后加载这个JS才进入移动网站,也就是说用户要打开你的移动网站,要加载两个网站,网站打开速度太慢的同时还浪费流量。

最好的做法是直接使用301或302跳转,301或302跳转是在解析域名的时候就做出了跳转的动作,所以不存在用户要打开两个网站,同时百度也可以识别301或302的返回状态,下面是301或302的规则。注意pc与主移动版本用301重定向,各移动版本之间用302重定向。

linux+Apache的跳转规则

一、根目录下.htaccess内容,处理pc域名到手机站域名的跳转:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]
RewriteRule ^$ http://手机站域名/ [R=301,L]
</IfModule>

  二、子目录下的.htaccess的跳转规则

RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]
RewriteRule ^\/$ http://手机站域名/list.php?tid=25 [R=301,L]

  三、子目录下的文章页面(按日期分类及命名)的url跳转规则

RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]

RewriteRule ^([0-9]+)/([0-9]+)\.html$ http://手机站域名/view.php?aid=$2 [R=301,L]

win+iis跳转规则

<rewrite>
<rules>
<rule name="已导入的规则 1" stopProcessing="true">
<match url="^$" ignoreCase="false" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_USER_AGENT}" pattern="android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|MQQBrowser|Windows Phone|wap" />
</conditions>
<action type="Redirect" url="http://m.aaaaa.com/" redirectType="Permanent" />
</rule>
<rule name="已导入的规则 2" stopProcessing="true">
<match url="^a/view/(.*).html$" ignoreCase="false" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_USER_AGENT}" pattern="android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|MQQBrowser|Windows Phone|wap" />
</conditions>
<action type="Redirect" url="http://m.aaaaa.com/a/{R:1}.html" redirectType="Permanent" />
</rule>
<rule name="已导入的规则 3" stopProcessing="true">
<match url="^down/html/(.*).html$" ignoreCase="true" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_USER_AGENT}" pattern="android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|MQQBrowser|Windows Phone|wap" />
</conditions>
<action type="Redirect" url="http://m.aaaaa.com/s/{R:1}.html" redirectType="Permanent" />
</rule>
<rule name="已导入的规则 4" stopProcessing="true">
<match url="^down/class/(.*)_(.*).html" ignoreCase="false" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_USER_AGENT}" pattern="android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|MQQBrowser|Windows Phone|wap" />
</conditions>
<action type="Redirect" url="http://m.aaaaa.com/list/{R:1}.html" redirectType="Permanent" />
</rule>
<rule name="已导入的规则 1-1" stopProcessing="true">
<match url="^tags.php?/(.*)/$" ignoreCase="false" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_USER_AGENT}" pattern="android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|MQQBrowser|Windows Phone|wap" /><
</conditions>
<action type="Redirect" url="http://m.aaaaa.com/tags_{R:1}.html" redirectType="Permanent" />
</rule>
<rule name="已导入的规则 2-1" stopProcessing="true">
<match url="^tags.php$" ignoreCase="false" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_USER_AGENT}" pattern="android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|MQQBrowser|Windows Phone|wap" />
</conditions>
<action type="Redirect" url="http://m.aaaaa.com/tags.html" redirectType="Permanent" />
</rule>
</rules>
</rewrite>

第三种:代码适配

代码适配的网页其实就是鸡肋,在技术上比自动响应的高,在效果比自动响应的差,相对前面两种代码适配是比较中性的,所以我们在市面上也很少见到有网站会使用此技术来做移动网站。不过在移动站点优化上,代码适配确实有写不一样的优势。

Vary HTTP 标头助于 百度spdier 更快速地发现针对移动设备进行优化的内容,会将有效的 Vary HTTP 标头作为抓取信号之一,我们会提高用其他ua抓取此网页的优先级。

并且在pc的响应的head中添加
<meta name="applicable-device" content="pc">
在移动的响应的包头中添加
<meta name="applicable-device" content="mobile">

如果上面看不懂,请看下面最简单的方式

如果你是自动响应的,那就不需要看了,因为自动响应网站可以全自动适配对应上,如果是后面两个方式,不懂,可以直接使用百度站长平台的移动适配工具来适配。做适配前,需要验证百度站长平台

适配网站:http://zhanzhang.baidu.com/mobile/

在里面有两种方式进行适配,第一种通过规则来适配,但要懂规则,这里的规则非常简单,第二种通过URL来适配,把你手机站和移动站对应的URL下载出来,整理成一个txt文档上传进去,如果你网站URL多,第二种方法明显就不适合了。那么第一种方法的规则如下:

PC网站:http://www.ssffx.com/SEOjishu/1191.html

移动网站:http://m.ssffx.com/SEOjishu/1191.html

a)确定都是数字的,则用 (\d+)表示

b)确定都是字母的,则用 ([a-zA-Z]+) 表示

c)确定是字母数字混合,则用 ([a-zA-Z0-9]+) 表示

d)确定是字母数字下划线混合,则用 (\w+) 表示

从上面的URL得出下面的适配关系。

PC网站:http://www.ssffx.com/ ([a-zA-Z]+)/ (\d+).html
移动网站:http://m.ssffx.com/${1}/${2}.html

相信大家看到上面的说法都懂得,这些也都是小学生都能够看懂的对应关系,把a,b,c,d运用对应上去即可,至于${1},${2},依次用${1},${2},……表示替换掉改版前url中的可替换参数或路径。提交到百度移动适配的工具中,另外找三对PC和移动对应的URL放上去提交后等待校验即可。

总结:移动站点的排名主要是根据PC网站来对应获得的排名,因为大多移动关键词排名都是PC搜索结果的数据。

来源:冯耀宗博客(QQ/微信号:394062665),欢迎分享本文,转载请保留出处!

说说PC站和移动站的移动适配关系优化的更多相关文章

  1. 如何布局您的PC站和移动站,并表达两者之间内容的对应关系

      如何布局您的PC站和移动站,并表达两者之间内容的对应关系 目前较流量的PC站与移动站配置方式有三种,百度站在搜索引擎角度将这三种分别称为跳转适配.代码适配和自适应,以下为这三种配置方式的名词解释及 ...

  2. PC站与H5移动站最佳适配方案

    HTML5是目前HTML的最屌版本,同时也是建设移动站的最佳技术.百度适时推出PC站与H5移动站的最佳适配方案,对站长而言实在是久旱逢甘霖.详情如下: PC站与H5移动站最佳适配方案 pc端: 在pc ...

  3. dedecms手机站和PC站共用同一数据库的方法

    我们知道搜索引擎建议将手机站和PC站分开,虽然自适应可以适配不同的终端,但单独建独立的m站可能权重和排名更好,因为移动端的竞争度不同甚至更低.代码更精简.蜘蛛抓取更顺畅,所以要单独建手机站比较好.那么 ...

  4. 帝国移动pc站文章

    帝国建站的时候发现,如果在PC站发文章,那么移动站的文章正文无法显示... 搜索调试了很久,原来是要对config进行配置. 在移动站config.php文件,对 $ecms_config['sets ...

  5. 从Pc转向H5开发遇到的适配问题思考

    1.首先说滚动条 移动端开发在不设置任何适配和viewport宽度的情况下,以iphone5为例:屏幕界面的逻辑分辨率是320x568,在谷歌浏览器的界面下屏幕的可视宽度是980px(谷歌设置的,每个 ...

  6. dedecms网站扩展手机网站—共用数据库真正做到电脑手机同步访问,原pc站无需改动,对原pc站无任何影响

    在如今无线互联网大潮的冲击下,越来越多的pc网站访问量下降,首当其冲的就是以pc网站为生的站长们,为了顺应无线互联网的要求,站长们很有必要为自己的pc网站扩展一套手机网站,更早的抓住手机用户的流量,使 ...

  7. PC端、移动端页面适配方案

    前言 页面自适应PC端.移动端大体上可以分为两种: 1.在同一个页面进行自适应布局,通常使用CSS3 @media 媒体查询器实现 2.两套页面,在后端进行统一适配,根据不同的浏览器UA返回对应的页面 ...

  8. PC端和移动端地址适配

    判断当前页面的打开方式是pc还是移动设备,如果是移动设备,跳转到对应移到端网站的方法: 方法一.还是用@media screen 思路:css使用媒体查询,当屏幕小于760px时,使某个元素的样式发生 ...

  9. 一个简单的 PC端与移动端的适配(通过UA)

    只需在header引用个js文件, 原理就是判断UA里面的标识.  加下面代码添加到js文件,在头文件引用即可 var Pc_url = 'http://www.baidu.com'; //PC端网址 ...

随机推荐

  1. CSS3文字与字体 text-overflow 与 word-wrap

    text-overflow 对象内的文本溢出部分采用省略“...”标记 或者 剪切: text-overflow:elip(超出容器边界的内容剪切掉)  | ellipsis(超出容器边界内容省略标示 ...

  2. openlayers 3方法继承

    之前Web GIS开发使用的ArcGIS API用起来很系统,但是使用开源Web GIS API已经成主流趋势(你懂的~),最近项目想要从ArcGIS API 转到openlayers API,用起来 ...

  3. 自定义编译gdal库

    作者:朱金灿 来源:http://blog.csdn.net/clever101 使用下载下来的gdal库的makefile来编译gdal库,生成的gdal库的名字debug版本和release版本都 ...

  4. Android-蓝牙的网络共享与连接分析

    一.概述 本次分析是基于android7.0的源码,主要是介绍如何通过反射来打开蓝牙的网络共享以及互联网的连接. 二.蓝牙的网络共享 1. 网络共享部分源码分析 关于packages/apps/Set ...

  5. django csrf token添加

    #views.py from django.shortcuts import render_to_response, RequestContext from django.views.decorato ...

  6. leetcode题解-122买卖股票的最佳时期

    题目 leetcode题解-122.买卖股票的最佳时机:https://www.yanbinghu.com/2019/03/14/30893.html 题目详情 给定一个数组,它的第 i 个元素是一支 ...

  7. shiro过滤器详解分析

    (原) shiro最核心的2个操作,一个是登录的实现,一就是过滤器了.登录有时间再补录说明,这里分析下shiro过滤器怎样玩的. 1.目标 这里会按如下顺序逐一看其实原理,并尽量找出其出处. 先看一下 ...

  8. node js 异步运行流程控制模块Async介绍

    1.Async介绍 sync是一个流程控制工具包.提供了直接而强大的异步功能.基于Javascript为Node.js设计,同一时候也能够直接在浏览器中使用. Async提供了大约20个函数,包含经常 ...

  9. vue 绑定样式的几种方式

    vue 绑定样式 对象语法 1.v-bind:class设置一个对象,动态切换class <div :class="{'active':isActive}">xxx&l ...

  10. CSS如何把一张横向的长图变成竖向的?

    前言: 有时候做项目过程中,设计的是一张横向的长图,但是我们需要在手机端观看的时候,也想把手机横着观看,这样视野更宽阔,如何解决这个问题呢? html <div class="imgB ...