微信现已开放小程序内搜索,你的小程序页面将可能展示在微信搜索等多个公开场景中。当开发者允许微信索引时,微信会通过爬虫的形式,为小程序的页面内容建立索引。
若小程序中存在不适合展示信息如用户个人信息、商业秘密、成人相关等内容,不想被微信索引到。可以通过以下方式关闭页面收录。
有三种方式可以关掉页面收录
- 1.小程序 sitemap.json 配置
- 2.管理后台 “页面收录设置” 来配置其小程序页面是否允许微信索引
- 3.小程序页面采取设置登录态
小程序 sitemap.json 配置
小程序根目录下的 sitemap.json 文件用于配置小程序及其页面是否允许被微信索引,文件内容为一个 JSON 对象,如果没有 sitemap.json ,则默认为所有页面都允许被索引;sitemap.json 有以下属性:
{
"rules": [
{
"action": "allow", // 是否能被索引 allow,disallow 默认allow "page": "path/to/page", //页面的路径,* 表示所有页面, "params": ["a", "b"], //被本规则匹配时可能使用的页面参数名称的列表 "matching": "exact" // 页面在被本规则匹配时,此参数说明 params 匹配方式 "priority": number // 非必填,优先级,值越大则规则越早被匹配 } ] } //matching 取值说明 exact 当小程序页面的参数列表等于 params 时,规则命中 inclusive 当小程序页面的参数列表包含 params 时,规则命中 exclusive 当小程序页面的参数列表与 params 交集为空时,规则命中 partial 当小程序页面的参数列表与 params 交集不为空时,规则命中
示例1
{
"rules": [
{
"action": "allow",
"page": "path/to/page", "params": ["a", "b"], "matching": "exact" }, { "action": "disallow", "page": "path/to/page" } ] } path/to/page?a=1&b=2 => 优先索引 path/to/page => 不被索引 path/to/page?a=1 => 不被索引 path/to/page?a=1&b=2&c=3 => 不被索引 其他页面都会被索引
示例2
{
"rules": [
{
"action": "allow",
"page": "path/to/page", "params": ["a", "b"], "matching": "inclusive" }, { "action": "disallow", "page": "path/to/page" } ] } path/to/page?a=1&b=2 => 优先索引 path/to/page?a=1&b=2&c=3 => 优先索引 path/to/page => 不被索引 path/to/page?a=1 => 不被索引 其他页面都会被索引
示例3
{
"rules": [
{
"action": "allow",
"page": "path/to/page", "params": ["a", "b"], "matching": "exclusive" }, { "action": "disallow", "page": "path/to/page" } ] } path/to/page => 优先索引 path/to/page?c=3 => 优先索引 path/to/page?a=1 => 不被索引 path/to/page?a=1&b=2 => 不被索引 其他页面都会被索引
示例4
{
"rules": [
{
"action": "allow",
"page": "path/to/page", "params": ["a", "b"], "matching": "partial" }, { "action": "disallow", "page": "path/to/page" } ] } path/to/page?a=1 => 优先索引 path/to/page?a=1&b=2 => 优先索引 path/to/page => 不被索引 path/to/page?c=3 => 不被索引 其他页面都会被索引
没有 sitemap.json 则默认所有页面都能被索引
页面收录设置
登录小程序微信公众平台,设置下的页面收录设置
此设置默认开启,除非开发者主动关闭或调整,否则将会持续处于“开启”状态。
小程序页面采取设置登录态
爬虫访问小程序内页面时,会携带特定的 user-agent:mpcrawler
及场景值1129
onLoad(options) {
// 获取场景值
var scence = options.scene
if (scence == 1129) { wx.redirectTo({ url: '/pages/login/login' }) } }
.