《MIP闪电计划》
一、MIP介绍
MIP 全称 Mobile Instant Pages,移动网页加速器,是百度提出的页面加速解决方案。
MIP从前端渲染和页面网络传输两方面进行优化,杜绝页面渲染中的堵塞问题,提升页面展现速度。
MIP 官网: www.mipengine.org MIP(Mobile Instant Page - 移动网页加速器),是一套应用于移动网页的开放性技术标准。通过提供MIP-HTML规范、MIP-JS运行环境以及MIP-Cache页面缓存系统,实现移动网页加速。
MIP主要由三部分组织成:
l MIP HTML
l MIP JS
l MIP Cache
MIP HTML 基于HTML中的基础标签制定了全新的规范,通过对一部分基础标签的使用限制或功能扩展,使HTML能够展现更加丰富的内容;MIP JS 可以保证 MIP HTML 页面的快速渲染;MIP Cache 用于实现MIP页面的高速缓存,从而进一步提高页面性能。
二、MIP价值
MIP四大收益
瞬间加速:移动页面速度提升30-80%,支持在搜索引擎中沉浸式浏览,平均耗时最高降低80%
提升流量:搜索结果页专属icon,MIP页在搜索引擎中的点击量提升可高达13%,到达率提升5-40%
搜索优待:百度搜索会给予MIP结果页页面级别优待,抓取、收录、排序一脉相承。
体验优化:MIP页面符合百度移动友好度规范,页面内容将以更友好的方式瞬时到达用户。
MIP页面,大有不同
MIP页面的搜索结果页展现如下:
专属标识:每一个MIP页面都会有专属标识吸引用户点击。
MIP专属标识
页面加载提速:MIP页比普通页面快了3.31s,移动页面超过5s就会有75%以上用户流失。
普通页面与MIP页面Load Time对比
三、加入MIP闪电计划流程
1、开发流程:
2、开发指南:
按照下面的步骤,你可以快速创建一个基本的 MIP HTML 页面;通过进一步了解 MIP HTML 规范、对 MIP HTML 页面进行阶段性的验证等内容,你可以轻松开发出理想的 MIP 页面。
基本步骤包括:
l 创建基础 MIP HTML 页面
l 引入图片
l 调整样式和布局
l 预览和验证
l 最后一步
3、技术规范:
1. 头部使用规范
l 起始标签使用<!doctype html>
l html标签必须加上mip标记,即: <html mip>
l 必须包含<head>和 <body>标签
l 必须在head标签中包含字符集声明: <meta charset="utf-8">,字符集统一为utf-8
l 必须在head标签中包含viewport设置标签: <meta name="viewport" content="width=device-width,minimum-scale=1">,
推荐包含initial-scale=1
l 必须在head标签中包含<link rel="stylesheet" type="text/css" href="//m.baidu.com/static/ala/sf/static/css/miphtml_xxxxxx.css">
l 必须在head标签中包含
<script async src="https://m.baidu.com/miphtml/v0.js"></script>
l 必须在head标签中包含
<style>body {opacity: 0} </style><noscript><style>body {opacity: 1}</style></noscript>
l 必须在body标签中包含
<script src="//m.baidu.com/static/ala/sf/static/js/miphtml_main_xxxxxx.js">
4、验证规范:
5、提交MIP数据
推送接口:接口调用地址:
http://data.zz.baidu.com/urls?site=www.epet.com&token=JnC6fP2ynovrBy56&type=mip
推送示例
curl推送示例:
将要提交的链接按照每行一条的格式写入一个文本文件中,命名此文件为urls.txt,然后进入该文件所在目录,执行如下命令:
curl -H 'Content-Type:text/plain' --data-binary @urls.txt "http://data.zz.baidu.com/urls?site=www.epet.com&token=JnC6fP2ynovrBy56&type=mip"
使用php、python、java等可以参照这个过程推送结构化数据。
post推送示例
POST /urls?site=www.epet.com&token=JnC6fP2ynovrBy56&type=mip HTTP/1.1
User-Agent: curl/7.12.1
Host: data.zz.baidu.com
Content-Type: text/plain
Content-Length: 83
http://www.example.com/1.html
http://www.example.com/2.html
php推送示例
$urls = array(
'http://www.example.com/1.html',
'http://www.example.com/2.html',
);
$api = 'http://data.zz.baidu.com/urls?site=www.epet.com&token=JnC6fP2ynovrBy56&type=mip';
$ch = curl_init();
$options = array(
CURLOPT_URL => $api,
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => implode("\n", $urls),
CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
echo $result;
ruby推送示例
require 'net/http'
urls = ['http://www.example.com/1.html', 'http://www.example.com/2.html']
uri = URI.parse('http://data.zz.baidu.com/urls?site=www.epet.com&token=JnC6fP2ynovrBy56&type=mip')
req = Net::HTTP::Post.new(uri.request_uri)
req.body = urls.join("\n")
req.content_type = 'text/plain'
res = Net::HTTP.start(uri.hostname, uri.port) { |http| http.request(req) }
puts res.body
查看推送反馈
推送成功
推送失败
原创优读网-重庆seo,来源:http://www.seoread.org/post/mip.html