如何提升开放适配效果? |
发布时间: 2012/9/18 11:19:50 |
首先,对已有的对应关系持续进行适配,同时不断建设新的对应关系,增加适配覆盖的范围。
其次,要确保已经标注/提交的对应关系对应准确。以下是常见的对应不准确错误,请网站进行自查,并及时修改。
手机页不可用,比如死链。
robots封禁。放开对百度spider的robots封禁和屏蔽,以便spider获取您PC站与手机站之间的对应关系。
手机页使用了ajax等异步加载的方法加载内容主体。
格式错误。包括meta标注的位置、格式错误,对应关系sitemap格式错误等。
对应关系错误
当PC页为内容页时,应该适配到对应的手机页内容页,而实际却适配到手机页的首页/列表页。
例如PC页为http://www.qidian.com/Book/2083259.aspx,适配后的手机页为http://qidian.cn/?from=web
手机页本身无主体内容/主体内容过少。
手机页需登录才能浏览主体内容。
PC页内容与手机页内容不存在一一对应关系。
正确的对应关系示例:
PC页http://sports.sina.com.cn/j/2012-08-13/23516189909.shtml
手机页http://sports.sina.cn/?sa=d4634022t24v4&cid=797&pos=10&vt=4
如何制作对应关系sitemap文件(url级别)?
通过XML文件描述url级别的PC页与手机页的对应关系,网站当前有对应关系的所有PC页面url均需要给出。格式如下:
<?xml version="1.0"encoding="UTF-8"?>
<urlset>
<url>
<!--必填标签,表示PC页的url地址 -->
<loc><![CDATA[http://www.yoursite.html/yoursite.html]]></loc>
<data>
<display>
<!—可选标签,表示该PC页对应的html5版式的手机页的url地址 -->
<html5_url><![CDATA[http://html5.yoursite.html/yoursite.html]]></html5_url>
<!—可选标签,表示该PC页对应的wml版式的手机页的url地址 -->
<wml_url><![CDATA[http://wml.yoursite.html/yoursite.html]]></wml_url>
<!—可选标签,表示该PC页对应的xhtml版式的手机页的url地址 -->
<xhtml_url><![CDATA[http://xhtml.yoursite.html/yoursite.html]]></xhtml_url>
</display>
</data>
</url>
</urlset>
例如:
<?xmlversion="1.0" encoding="UTF-8"?>
<urlset>
<url>
<loc><![CDATA[http://www.sina.com.cn/]]></loc>
<data>
<display>
<html5_url><![CDATA[http://html5.sina.com.cn/]]></html5_url>
<wml_url><![CDATA[http://wml.sina.com.cn/]]></wml_url>
<xhtml_url><![CDATA[http://3g.sina.com.cn/]]></xhtml_url>
</display>
</data>
</url>
<url>
<loc><![CDATA[http://www.sohu.com/]]></loc>
<data>
<display>
<html5_url><![CDATA[http://html5.sohu.com/]]></html5_url>
<wml_url><![CDATA[http://wml.sohu.com/]]></wml_url>
<xhtml_url><![CDATA[http://3g.sohu.com/]]></xhtml_url>
</display>
</data>
</url>
</urlset>
如何制作对应关系sitemap文件(pattern级别)?
1、格式
Pattern级别对应关系提交支持XML sitemap的形式,每个xml sitemap文件可包含1组或者多组pattern对应关系。格式说明如下:
标签名称 标签说明 标签限制 标签路径 可选/必选
urlset 唯一的根节点,标记整个文档的开头和结尾 / / 必选
url url标记每组pattern的开始和结束 1个或多个 /urlset 必选
loc 表示PC站点的网址首页 最大长度256个字符,以"http://"开头 /urlset/url 必选
pc_url_pattern 表示该PC页的url pattern 最大长度256个字符,以"http://"开头 /urlset/url/data/display 必选
html5_url_pattern 表示PC页对应的html5版式的手机页的url pattern 最大长度256个字符,以"http://"开头 /urlset/url/data/display 可选
wml_url_pattern 表示PC页对应的wml版式的手机页的url pattern 最大长度256个字符,以"http://"开头 /urlset/url/data/display 可选
xhtml_url_pattern 表示PC页对应的xhtml版式的手机页的url pattern 最大长度256个字符,以"http://"开头 /urlset/url/data/display 可选
各URL字段可以被CDATA标记包含,如<![CDATA[url]]> 。
示例:
<?xml version="1.0"encoding="UTF-8"?>
<urlset>
<!-- 表示news.163.com下的一组pattern对应关系-->
<url>
<loc><![CDATA[http://news.163.com/]]></loc>
<data>
<display>
<pc_url_pattern><![CDATA[http://news.163.com/(\d+)/(\d+)/(\d+)/(\w+).html]]></pc_url_pattern>
<xhtml_url_pattern ><![CDATA[http://3g.163.com/news/${1}/${2}/${3}/${4}.html]]></xhtml_url_pattern>
<wml_url_pattern ><![CDATA[http://wap.163.com/wml/page/ntes/${1}/${2}/${3}/${4}.wml]]></wml_url_pattern>
</display>
</data>
</url>
2、字段详细说明
pc_url_pattern: 表示PC页pattern,在PC页url的基础上,首先确定url中哪些路径或参数是可替换的。然后根据其类型,使用正则匹配符号(\d+)或者(\w+)表示该路径或参数。(\d+)表示纯数字字符串,(\w+)表示数字或字母组成的字符串。
xhtml_url_pattern / html5_url_pattern/ wml_url_pattern:表示xhtml/html5/wml版式的手机页pattern,在手机页url的基础上,根据可替换参数在对应的PC页pattern中出现的顺序,依次用${1},${2},……表示该参数。
3、举例
以网易的新闻页“漫游接电话移动也不要钱了”为例,其PC页url地址为http://news.163.com/09/1001/07/5KH8DE1F000120GR.html, 其对应的xhtml格式的手机页url地址为http://3g.163.com/news/09/1001/07/5KH8DE1F000120GR.html。
步骤一:确定PC页中的可替换参数或者路径,得到其位置序号和类型。
根据网站自身url的层次结构,其中09,1001,07和5KH8DE1F000120GR为动态可替换的路径。除5KH8DE1F000120GR为字母和数字混合外,其余均为纯数字。
步骤二:根据可替换参数或路径的类型,得到PC页pattern (即sitemap中的pc_url_pattern)。
使用正则匹配符号(\d+)或者(\w+)表示该路径或参数。(\d+)表示纯数字字符串,(\w+)表示数字或字母组成的字符串。
步骤三:根据手机页url,以及可替换参数在步骤一中的位置序号,依次用${1},${2},……表示替换掉手机页url中的可替换参数或路径,得到手机页pattern。
例子中,依次用${1},${2},${3}和${4}替换掉09,1001,07和5KH8DE1F000120GR,得到手机页pattern为http://3g.163.com/news/${1}/${2}/${3}/${4}.html。
步骤四:根据手机页的页面类型,将手机页pattern写入对应的字段。各字段可以用CDATA标记包含,如<![CDATA[url]]> 。
如示例中该pattern的手机页面为xhtml版式,将pattern http://3g.163.com/news/${1}/${2}/${3}/${4}.html 写入到xhtml_url_pattern字段中。
最终得到sitemap文件如下:
<?xml version="1.0"encoding="UTF-8"?>
<urlset>
<!—表示news.163.com下的一组pattern对应关系-->
<url>
<loc><![CDATA[http://news.163.com/]]></loc>
<data>
<display>
<pc_url_pattern><![CDATA[http://news.163.com/(\d+)/(\d+)/(\d+)/(\w+).html]]></pc_url_pattern>
<xhtml_url_pattern ><![CDATA[http://3g.163.com/news/${1}/${2}/${3}/${4}.html]]></xhtml_url_pattern>
<!-- 一组PC pattern可能含有多个版式的手机页pattern -->
</display>
</data>
</url>
<!-- 下一组pattern放在一个新的url节点内 -->
</urlset>
备注
通过sitemap只能提交具有简单对应关系的pattern,也即,在PC页url与手机页路径或参数之间存在直接的对应关系,使得机器能根据PC页url按照一定的正则pattern自动计算出与其对应的手机页的url。如http://news.sina.com.cn/c/2012-05-27/235824487992.shtml和http://news.sina.cn/?sa=t124v71d6155414&pos=102&vt=4虽然是对应的,但是从url本身很难找到联系,就不属于简单对应关系。
正则匹配符号不可嵌套使用,如(d+(\w+))这种形式不合法。
Pattern中,站长无需考虑特殊符号的正则转义等问题,百度会帮您转义成机器可以识别的正则表达式。
本文出自:亿恩科技【www.enkj.com】 |