首先,百度在官方的声明中说:[喝小酒的网摘]http://blog.hehehehehe.cn/a/17112.htm

百度仅作为中立的转码工具及相关技术的提供方。在转码过程中,百度对第三方网站内容不做任何修改或编辑,亦不对本页面内容负责。您享有是否阅读转码页面的选择权,如您希望选择以非转码形式查看该页面内容,请您直接访问原网站。

当然也有百度对于推出百度转码的意义以及策略,最后当然也提到了如何屏蔽百度转码或者说叫做不希望被转码方法。如果只想拿来就用,就不需要看后面的了,直接在head中间插入<meta http-equiv="Cache-Control" content="no-transform " />即可。

1. web页面转码的意义?

互联网上融合了WEB和WAP两类网页资源,WEB网页资源占比远多于WAP网页,但目前绝大多数移动终端的浏览器都不能直接浏览WEB网页。因此,为确保WAP可用性,必须对WAP搜索结果中的WEB网页进行格式转换,转换为WAP网页,使其能在移动终端浏览器被浏览。百度的转码技术即是为实现此目的、服务于WAP搜索的附属产品,各大搜索引擎均拥有并提供类似转码技术。

2. 百度转码的策略?
为了最大程度解决WEB页面在手机上的可用性,转码须去除WEB页面中不能在手机浏览器上浏览的内容,和无法用WAP描述语言描述的部分内容,并将网页布局由2维布局适配为1维布局。

3. 站长小贴士

(1)如果觉得自己的站点转码效果不佳怎么办?
可以使用百度移动标注协议,在PC站点的html页面中加入百度的标注协议(注释形式),提升转码效果。该协议主要针对采用html规范制作的Web站点,以利于站长自助优化百度无线搜索访问其站点时的页面效果。

(2)如果不希望自己的站点被转码怎么办?

共有三种解决方案:

A. no-transform协议

TC支持的no-transform协议为如下两种形式:

a. HTTP Response中显式声明Cache-control为no-transform。

b. meta标签中显式声明Cache-control为no-tranform,格式为:

<head>

<meta http-equiv="Cache-Control" content="no-transform " />

</head>

如第三方站点不希望页面被转码,可添加此协议,当用户进入第三方网站时,先进入中间提示页,页面将引导用户自主选择跳转至原网页。

B. handheld协议

页面通过lt;link>标签显式指定WAP网页,声明格式如下:

<link rel="alternate" type="application/vnd.wap.xhtml+xml" media="handheld" href="target"/>

如第三方站点不希望页面被转码,可添加此协议,告知我们原网页对应有一个WAP版页面,当用户进入第三方网站时,先进入中间提示页,让用户自主选择跳转至原网页或第三方网站自有的wap页面。

C. 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页面。

[喝小酒的网摘]http://blog.hehehehehe.cn/a/17112.htm

官方提供的屏蔽百度转码Baidu Transcoder的方法no-transform的更多相关文章

  1. google官方提供的编译android源码的环境初始化,Initializing a Build Environment

    原文网址:http://source.android.com/source/initializing.html Initializing a Build Environment IN THIS DOC ...

  2. Qt程序打包发布方法(使用官方提供的windeployqt工具)

    Qt程序打包发布方法(使用官方提供的windeployqt工具) 转自:http://tieba.baidu.com/p/3730103947?qq-pf-to=pcqq.group Qt 官方开发环 ...

  3. 【转载】微软官方提供的Sqlserver数据库操作帮助类SQLHelper类

    在.NET平台中,C#语言一般使用ADO.NET组件来操作Sqlserver数据库,通过ADO.NET组件可以实现连接数据库.查询数据集.执行SQL语句以及关闭数据库连接等操作,为此网上有很多开发者自 ...

  4. Shiro官方快速入门10min例子源码解析框架2-Session

    Shiro自身维护了一套session管理组件,它可以独立使用,并不单纯依赖WEB/Servlet/EJB容器等环境,使得它的session可以任何应用中使用. 2-Session)主要介绍在quic ...

  5. 在chrome中屏蔽百度推荐

    在chrome中屏蔽百度推荐 方法1:可以使用adblock plus来进行屏蔽: 需要将chrome的扩展程序打开为调试者模式: 下载地址:http://chromecj.com/productiv ...

  6. (转)阿里官方提供的dubbo-spring-boot-starter 1.0.1 整合的dubbo 2.6.0和spring boot 1.5.9 案例

    作者:许浩_5e9f链接:https://www.jianshu.com/p/5381cc8876e3來源:简书著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. springboo ...

  7. 《MySQL必知必会》官方提供的数据库和表

    数据用于配合<MySQL必知必会>(MySQL Crash Course)这本书使用,配套SQL文件也可在Ben Forta网站下载. Ben Forta网址:http://forta.c ...

  8. 新唐N32905U1DN开发教程:MDK环境下工程搭建(官方提供的固件库)(转)

    前言:新唐N32905U1DN单片机不支持用户将程序烧录到内部FLASH,必须外挂FLASH存储用户程序,可以是SPI FLASH.NAND FLASH.SD卡.用户采用裸机开发的方式可使用官方提供的 ...

  9. deno学习三 官方提供的方便deno 安装方式

    早起deno 使用了golang 开发,同时需要protobuf 进行数据的序列化以及反序列化处理 当前的deno 已经使用rust 进行了开发,同时官方提供的安装方式也很方便了,不需要 那么复杂的编 ...

随机推荐

  1. python中的input,print

    此用例在python3.3.5中测试通过: 输入:在python中输入是使用input,下面示例代码表示把输入的值存入变量s中,并输入s 在这里提醒一下:使用input获取的值都是string类型

  2. OSX unable to write 'random state'

    openssl ca -gencrl -config ./config/openssl.cnf -out ./CA/crl/cacrl.pem -passin pass:'password' unab ...

  3. OData 带更新的实例,并能取得元数据格式类型

    http://www.cnblogs.com/kid1412/p/6012938.html#CreateANewEntity <<ABP框架>> OData 集成   文档目录 ...

  4. IQueryable join 的问题

    //定义OrderDetailsTable model类public class OrderDetailsTable { public int OrderID { get; set; } public ...

  5. 【转载】Keil中的USE MicroLib说明

    在keil建立ARM的工程时 其中有一项是选 use MicroLIB 由于对KEIL不是很熟悉,于是就查了查,得到了以下信息: microlib 是缺省 C 库的备选库. 它旨在与需要装入到极少量内 ...

  6. 【转】基于第一个PhoneGap(cordova)的应用详解

    PhoneGap是一套能让你使用HTML5轻松调用本地API接口和发布应用到商店的应用开发平台.官方说有低成本,低开发周期,轻量化等优点,这些咱暂时也没法证明,略过不表.但是有一条跨平台,却是很明显的 ...

  7. mongodb高级查询

    前几篇,老玩家绕道即可,新手晚上闲着也是蛋疼,不如把命令敲一边,这样你就会对MongoDB有一定的掌握啦.如果没有安装MongoDB去看我的上一篇博客  MongoDB下载安装与简单增删改查 前奏:启 ...

  8. 【webpy开发实战】webpy的cookbook 个人版

    版本:webpy0.3 问题1.1 所需软件及环境配置? 解决办法 sqlite: jinja2:找不到jinja2模块时,将jinja模块文件夹加入 sys.path  -> sys.path ...

  9. css中 input的button默认原始的样子

    以往我们写css时,让一行文字垂直居中. 会设置line-height等于height比如: 当我把这个原理 放在button上时  会是这个样子的. 以下都是火狐浏览器环境 有没有发现一个现象,他们 ...

  10. “XXX::Invoke”类型的已垃圾回收委托进行了回调。这可能会导致应用程序崩溃、损坏和数据丢失。向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,直到确信不会再次调用它们。

    症状描述如下: 如果将一个委托作为函数指针从托管代码封送到非托管代码,并且在对该委托进行垃圾回收后对该函数指针发出了一个回调,则将激活 callbackOnCollectedDelegate 托管调试 ...