禁止百度自动把网页转码的3种方法

为什么百度要自动把我们的?

目前的互联网状况是WEB网远多于WAP,目前绝大多数移动端的浏览器都不能直接浏览WEB网页。为确保移动设备能顺利访问网页必须对WAP搜索结果中的WEB网页进行格式转换,转换为WAP网页,使其能在移动终端浏览器被浏览。

百度会去除WEB页面中不能在手机浏览器上浏览的内容和无法用WAP描述语言描述的部分内容,并将网页布局由2维布局适配为1维布局。

各大搜索引擎均拥有并提供类似转码技术。

禁止网站被转码的的三种方法:

第一种. no-transform协议

TC支持的no-transform协议为如下两种形式:
a. HTTP Response中显式声明Cache-control为no-transform。
b. meta标签中显式声明Cache-control为no-tranform,格式为:
<head>
<meta http-equiv="Cache-Control" "no-transform " />
</head>
如第三方站点不希望页面被转码,可添加此协议,当用户进入第三方网站时,先进入中间提示页,页面将引导用户自主选择跳转至原网页。

第二种. handheld协议

页面通过lt;link>标签显式指定WAP网页,声明格式如下:
<link rel="alternate" type="application/vnd.wap.xhtml+xml" media="handheld" href="target"/>
如第三方站点不希望页面被转码,可添加此协议,告知我们原网页对应有一个WAP版页面,当用户进入第三方网站时,先进入中间提示页,让用户自主选择跳转至原网页或第三方网站自有的wap页面。

第三种. User-Agent相关

TC抓取页面时,使用的User-Agent为:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; baidu Transcoder;)
如第三方站点不希望转码HTML页面,且又可以提供对应的自有WAP页面,则可以根据这个User-Agent,返回自有WAP页,同时在HTTP Response显示声明:Content-Type为:vnd.wap.xhtml+xml,那么TC将不对这个页面转码,而是直接跳转至相应的自有WAP页面。