VuePress 博客之 SEO 优化(一)之 sitemap 与搜索引擎收录

前言

《一篇带你用 VuePress + Github Pages 搭建博客》中,我们使用 VuePress 搭建了一个博客,最终的效果查看:TypeScript 中文文档

本篇讲讲如何进行 SEO 优化。

1. 生成 sitemap

借助 vuepress-plugin-sitemap 生成站点地图:

1.1 安装

1yarn add vuepress-plugin-sitemap -D

1.2 修改 config.js

1// .vuepress/config.js 2module.exports = { 3 plugins: { 4 'sitemap': { 5 hostname: 'https://ts.yayujs.com' 6 }, 7 } 8}

1.3 如果生成失败

如果 build 的时候,生成失败:

这可能是因为你设置了 lastUpdated 或者使用了 @vuepress/last-updated 插件,当两个一起用的时候,因为时间对象的缘故,产生了报错,我们搜索 vuepress-plugin-sitemap 的 issues,可以找到一个解决方法,我们修改一下 config.js:

1// .vuepress/config.js 2module.exports = { 3 plugins: [ 4 [ 5 '@vuepress/last-updated', 6 { 7 transformer: (timestamp, lang) => { 8 return new Date(timestamp).toLocaleDateString(); 9 } 10 } 11 ], 12 [ 13 'sitemap', 14 { 15 hostname: 'https://ts.yayujs.com' 16 } 17 ] 18 ] 19}

1.4 build 成功

如果 build 成功,我们则会在 dist 目录里看到一个 sitemap.xml,大致类似于这种结构:

1<?xml version="1.0" encoding="utf-8"?> 2 3<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:mobile="http://www.google.com/schemas/sitemap-mobile/1.0" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"> 4 <url> 5 <loc>https://ts.yayujs.com/learn-typescript/</loc> 6 <lastmod>2022-01-05T16:00:00.000Z</lastmod> 7 <changefreq>daily</changefreq> 8 </url> 9 <url> 10 <loc>https://ts.yayujs.com/learn-typescript/handbook/ConditionalTypes.html</loc> 11 <lastmod>2022-01-05T16:00:00.000Z</lastmod> 12 <changefreq>daily</changefreq> 13 </url> 14</urlset>

1.5 sitemap 地址

我们部署到服务器上,就可以获得一个 sitemap 地址,比如我的就是:

https://ts.yayujs.com/learn-typescript/sitemap.xml

有了这样一个 sitemap 地址,我们可以方便的提交给各个搜索引擎平台,方便根据 sitemap 抓取我们的页面。

2. 百度收录

2.1 添加站点

登陆百度搜索资源平台,进入用户中心

点击「添加站点」,可能需要你完善下账户信息,然后会进入站点信息填写页面,分为三步:

第一步:输入站点

第二步:站点属性

第三步:验证网站

之所以需要验证网站,是为了证明你是该域名的拥有者,验证成功后,可以快捷批量添加子站点,查看所有子站数据,无需再一一验证子站点。

这里我采用的是 HTML 标签验证的方式,根据图中的代码指示,修改 vuepress 的 config.js 文件:

1// config.js 2module.exports = { 3 title: "title", 4 description: 'description', 5 head: [ 6 ['meta', { name: 'baidu-site-verification', content: '填写自己的 code' }] 7 ] 8}

然后点击「完成验证」,就会出现:

点击「我知道了」,就会跳转到 HTTPS 认证这里:

等待一天后,会显示认证成功:

2.2 提交收录

在站点管理页面,点击「普通收录」:

普通收录工具可以向百度搜索主动推送资源,缩短爬虫发现网站链接的时间,不保证收录和展现效果。

这里提供了三种方式收录:API 提交、sitemap、手动提交,那该如何选择呢?参考平台工具使用手册

**API推送:**最为快速的提交方式,建议您将站点当天新产出链接立即通过此方式推送给百度,以保证新链接可以及时被百度收录。

**sitemap:**您可以定期将网站链接放到Sitemap中,然后将Sitemap提交给百度。百度会周期性的抓取检查您提交的Sitemap,对其中的链接进行处理,但收录速度慢于API推送。

**手动提交:**如果您不想通过程序提交,那么可以采用此种方式,手动将链接提交给百度。

这里我选择的是 sitemap 方式,填写上节获得的 sitemap 地址:

提交后,就会进入等待抓取状态:

3. 谷歌收录

3.1 添加站点

访问 search.google.com,如果你之前没有添加过站点,会直接让你添加站点:

3.2 DNS 验证站点

这里我选择的是「网域」,输入域名后,会让你进行 DNS 验证:

由于我是在万网购买的域名,所以直接访问阿里云域名控制台,然后选择对应的域名点击 「解析」:

然后点击「添加记录」:

记录类型选择TXT,记录值填写 Google 提供的内容:

添加完后,由于 DNS 解析需要一段时间,最好等个几分钟后再进行验证,验证成功后会进入站点后台:

3.3 提交收录

点击左侧导航栏「网站检查」,输入要检查的域名,如果没有收录到 Google 中,点击「请求编入索引」:

在测试完实际网址可否可编入索引后,就会出现:

3.4 提交站点地图

3.5 确认收录

可以在谷歌搜索栏使用 site:域名, 来确认站点是否已被谷歌收录

4. 360 收录

4.1 添加站点

登陆 360 站长平台

4.2 验证站点

4.3 提交站点地图

5. 其他平台

除了这三个平台之外,还有 Bing 站长搜狗站长神马站长,操作基本类似,就不多说了。

系列文章

博客搭建系列是我至今写的唯一一个偏实战的系列教程,预计 20 篇左右,讲解如何使用 VuePress 搭建、优化博客,并部署到 GitHub、Gitee、私有服务器等平台。本篇为第 27 篇,全系列文章地址:https://github.com/mqyqingfeng/Blog

微信:「mqyqingfeng」,加我进冴羽唯一的读者群。

如果有错误或者不严谨的地方,请务必给予指正,十分感谢。如果喜欢或者有所启发,欢迎 star,对作者也是一种鼓励。

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

swap空间的增减方法

(1)增大swap空间去激活swap交换区:swapoff v /dev/vg00/lvswap扩展交换lv:lvextend L 10G /dev/vg00/lvswap重新生成swap交换区:mkswap /dev/vg00/lvswap激活新生成的交换区:swapon v /dev/vg00/lvswap