前言
1.sitemap.json介绍
开发者可以通过 sitemap.json 配置,或者管理后台页面收录开关来配置其小程序页面是否允许微信索引。
2.小程序爬虫特征
当开发者允许微信索引时,微信会通过爬虫的形式,为小程序的页面内容建立索引。当用户的搜索词条触发该索引时,小程序的页面将可能展示在搜索结果中。爬虫访问小程序内页面时,会携带特定的 user-agent:mpcrawler 及场景值:1129。
一、sitemap 配置
小程序根目录下的 sitemap.json 文件用于配置小程序及其页面是否允许被微信索引,文件内容为一个 JSON 对象,如果没有 sitemap.json ,则默认为所有页面都允许被索引;sitemap.json 有以下属性:
1.rules配置项
1.1 rules
1.1.1 matching
二、配置示例
{ "rules":[{ #索引规则列表,rules 配置项指定了索引规则,每项规则为一个JSON对象 "action": "allow", #是否允许被索引,参数:allow(允许)/disallow(不允许) "page": "path/to/page", #页面路径 "params": ["a", "b"], #路径的参数是a,b "matching": "exact" #等于关系,只有是a,b两个参数的时候才允许索引 #(a)不可以,(b)不可以,(a,b)可以,(a,b,c)不可以 #path/to/page?a=1&b=2 => 优先索引 # path/to/page?a=1 => 不被索引 }, { "action": "disallow", #不允许被索引 "page": "path/to/page", #这个路径的页面不允许被索引 "priority":"3" #优先级,数值越大,越优先,否则默认从 },{ "action": "allow", #允许索引 "page": "path/to/page", #索引的路径页面 "params": ["a", "b"], #索引的路径参数 "matching": "inclusive" #包含关系,只要路径参数包含a,b就可以 #(a)不可以,(a,b)可以,(a,b,c)可恶意 }{ "action": "allow", "page": "path/to/page", "params": ["a", "b"], "matching": "exclusive" #交集为空时允许索引 #(无参数)可以,(a)不可以,(a,b)不可以,(a,b,c)不可以,(c)可以 }, { "action": "allow", "page": "path/to/page", "params": ["a", "b"], "matching": "partial" #只要有个参数符合就可以 #(a)可以,(b)可以,(a,b,c)可以 } ] }