前言

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

在搭建这样一个博客后,其实还有很多的优化工作需要做,本篇我们来盘点一下那些完成基础搭建后必做的 10 个优化。

1. 开启 HTTPS

开启 HTTPS 有很多好处,比如可以实现数据加密传输等,SEO 也会更容易收录:

Google 会优先选择 HTTPS 网页(而非等效的 HTTP 网页)作为规范网页

开启 HTTPS,我们的基本步骤是:

  1. 购买下载证书
  2. 上传到服务器
  3. 开启 Nginx 配置

具体的操作步骤,可以参考 《VuePress 博客优化之开启 HTTPS》

2. Gzip 压缩

开启 Gzip 压缩将会极大的提高网站加载速度,如果服务器用的是按流量付费,就更是必须要做的内容。

如果使用的是 Nginx,由于 Nginx 内置 Gzip 压缩模块,可以直接开启:

server {# 这里是新增的 gzip 配置gzip on;gzip_min_length 1k;gzip_comp_level 6;gzip_types application/atom+xml application/geo+json application/javascript application/x-javascript application/json application/ld+json application/manifest+json application/rdf+xml application/rss+xml application/xhtml+xml application/xml font/eot font/otf font/ttf image/svg+xml text/css text/javascript text/plain text/xml;
}

关于 Gzip 压缩更多内容可以参考 《VuePress 博客优化之开启 Gzip 压缩》

3. 数据统计

添加数据统计后,可以看到网站的访问和来源情况,常添加的也就是百度统计和谷歌统计,在国内建议用百度统计。

添加统计代码很简单,往往只用在统计平台生成代码后,添加到站点就行,就比如百度的统计代码为:

<script>
var _hmt = _hmt || [];
(function() {var hm = document.createElement("script");hm.src = "https://hm.baidu.com/hm.js?82a3f80007c4e88c786f3602d0b8a215";var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s);
})();
</script>

只是要注意,由于 VuePress 是单页应用,页面切换过程中,不会重新加载页面,自然也不会触发百度统计。所以我们只能统计到用户访问了页面,但具体点开了哪些文章,跳转了哪些路由并不知道。为了实现路由切换时的数据统计,我们还需要监听路由改变,手动上报数据。

更具体的步骤可以参考《VuePress 博客优化之添加数据统计功能》

4. 功能插件

如果要给站点添加各种功能,不一定就要自己手写各种代码,也可以直接利用现成的插件。

比如公告插件:

代码复制插件:

背景音乐插件:

看板娘插件:

更多的插件和效果参考《搭建 VuePress 博客,你可能会用到的一些插件》

5. 评论功能

一个网站如果有评论功能,可以与读者建立交流,优化站点,也可以及时更新文章中的错误。

添加评论功能,主流是使用 Valine 和 Vssue。

Valine 是一款基于 LeanCloud 的快速、简洁且高效的无后端评论系统,而 LeanCloud 是一种 Serverless 云服务,提供了一站式的后端服务,如数据存储、即时通讯等等。使用 Valine,需要注册 LeanCloud,注册 LeanCloud 并使用服务,需要实名认证,最终实现的效果如下:

具体的操作步骤参考《VuePress 博客优化之增加 Valine 评论功能》

而 Vssue 是一个 Vue 驱动的、基于 Issue 的评论插件,虽然有多个托管平台可以使用,这里我使用的是 GitHub,并且实现了与我 GitHub 的文章 issues 打通,实现了同步。最终的效果如下:

具体的操作步骤参考 《VuePress 博客优化之增加 Vssue 评论功能》

6. 全文搜索

VuePress 的内置搜索只会为页面的标题、h2 、 h3 以及 tags 构建搜索索引。 如果你需要全文搜索,可则以使用 Algolia 搜索。

Algolia 是一个数据库实时搜索服务,能够提供毫秒级的数据库搜索服务,并且其服务能以 API 的形式方便地布局到网页、客户端、APP 等多种场景。

像 VuePress 官方文档就是使用的 Algolia 搜索,使用 Algolia 搜索最大的好处就是方便,它会自动爬取网站的页面内容并构建索引,你只用申请一个 Algolia 服务,在网站上添加一些代码,就像添加统计代码一样,然后就可以实现一个全文搜索功能:

具体的步骤参考 《VuePress 博客优化之开启 Algolia 全文搜索》

7. SEO

如果希望自己的站点能被搜索引擎做到,就要做好 SEO,而 SEO 牵涉的地方有很多,新手建议先看下基础的文档进行学习:

  1. 《百度搜索引擎优化指南2.0》https://ziyuan.baidu.com/college/courseinfo?id=193&page=3
  2. Google 搜索中心《搜索引擎优化 (SEO) 新手指南 》https://developers.google.com/search/docs/beginner/seo-starter-guide?hl=zh-cn

很多事情是一定要做的,比如自定义标题、描述、关键词,优化链接、重定向、生成 sitemap,并提交到搜索引擎平台,再辅助使用多个站长平台,及时发现和优化问题。

具体可以参考:

  1. VuePress 博客之 SEO 优化(一)sitemap 与搜索引擎收录
  2. VuePress 博客之 SEO 优化(二)重定向
  3. VuePress 博客之 SEO 优化(三)标题、链接优化
  4. VuePress 博客之 SEO 优化(四) Open Graph protocol
  5. VuePress 博客之 SEO 优化(五)添加 JSON-LD 数据
  6. VuePress 博客之 SEO 优化(六)站长工具

8. PWA 兼容

PWA,英文全称:Progressive Web Apps, 中文翻译:渐进式 Web 应用。

实现 PWA,可以方便的让我们的网站实现桌面图标、离线缓存、推送通知等功能。

要实现 PWA 参考 《VuePress 博客优化之兼容 PWA》

9. 修改样式

网站样式总有一些不满足你期望的地方,有的时候,就需要自己修改代码。

如果你要修改主题色,VuePress 定义一些变量供以后使用,你可以创建一个 .vuepress/styles/palette.styl 文件:

// 颜色
$accentColor = #3eaf7c
$textColor = #2c3e50
$borderColor = #eaecef
$codeBgColor = #282c34
$arrowBgColor = #ccc
$badgeTipColor = #42b983
$badgeWarningColor = darken(#ffe564, 35%)
$badgeErrorColor = #DA5961// 布局
$navbarHeight = 3.6rem
$sidebarWidth = 20rem
$contentWidth = 740px
$homePageWidth = 960px// 响应式变化点
$MQNarrow = 959px
$MQMobile = 719px
$MQMobileNarrow = 419px

如果你要自定义样式,你可以创建一个 .vuepress/styles/index.styl 文件。这是一个 Stylus文件,但你也可以使用正常的 CSS 语法。

更多的颜色修改参考 VuePress 的 palette.styl。

10. 手写插件

有的时候,现有的插件实在满足不了要求,你就需要自己写一个插件了,但是你还要注意,我们写的是一个 VuePress 插件还是一个 markdown-it 插件,比如我们复制代码,我们可以使用 VuePress 插件来实现,但是如果我们要给代码块加一个 try 按钮,点击跳转到对应的 playground 页面,那就是拓展 markdown 语法了,就需要写一个 markdown-it 插件了。

但无论你写哪种插件,都提供了文章:

  1. VuePress 插件:《从零实现一个 VuePress 插件》
  2. Markdown-it 插件:《VuePress 博客优化之拓展 Markdown 语法》

系列文章

博客搭建系列,讲解如何使用 VuePress 搭建、优化博客,并部署到 GitHub、Gitee、私有服务器等平台。

系列预计 20 篇左右,本篇为第 33 篇,全系列文章地址:https://github.com/mqyqingfeng/Blog

微信:「mqyqingfeng」,进低调务实优秀的中国好青年群,PS:这是一个正经的前端群。

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

搭建 VuePress 站点必做的 10 个优化相关推荐

  1. linux mint 19界面美化,安装完 LinuxMint 19.3 后必做的10件事

    安装完 LinuxMint 19.3 后必做的10件事 LinuxMint 发行版是一款基于Ubuntu的易用性好,特别适合入门者使用的一款Linux发行版,相比于Ubuntu,界面和操作更友好. 本 ...

  2. linux mint 美化软件,安装完 LinuxMint 19.3 后必做的10件事

    LinuxMint 发行版是一款基于Ubuntu的易用性好,特别适合入门者使用的一款Linux发行版,相比于Ubuntu,界面和操作更友好. 本教程主要讲解了在新安装完LinuxMint 19.3 后 ...

  3. 安装Ubuntu13.10后必做的10件事

    Ubuntu 13.10发布了,而且你已经升级了,然后你想知道现在要做些什么.不要着急,这里有10件安装完Ubuntu 13.10后必做的事. 我们以前为ubuntu每个版本整理了一个安装后核对表,但 ...

  4. Win10电脑计算机自己跑,为何这电脑跑得比谁都快?Win10必做的9项优化

    [PConline 资讯]想让系统更快些,就需要优化它.虽然和之前版本相比,Win10在底层性能上已经不错,但毕竟要照顾不同的使用人群,因此它的很多项目还是偏向于保守和大众化的.其实每个人使用Win1 ...

  5. 为何这电脑跑得比谁都快?Win10必做的9项优化

    想让系统更快些,就需要优化它.虽然和之前版本相比,Win10 在底层性能上已经不错,但毕竟要照顾不同的使用人群,因此它的很多项目还是偏向于保守和大众化的.其实每个人使用Win10 的目的都不同,有选择 ...

  6. win10添加美式键盘_WIN10系统必做的6个优化,优化完电脑性能飙升。

    现在越来越多的人开始用WIN10系统了,而对于习惯了使用WIN7系统的用户来说,刚刚开始接触WIN10系统,确实会有点不适应,特别是使用过程中一会儿弹出一个对话框,一会儿一个什么通知的,不厌其烦,接下 ...

  7. win10防火墙_WIN10系统必做的6个优化,优化完电脑性能飙升。

    现在越来越多的人开始用WIN10系统了,而对于习惯了使用WIN7系统的用户来说,刚刚开始接触WIN10系统,确实会有点不适应,特别是使用过程中一会儿弹出一个对话框,一会儿一个什么通知的,不厌其烦,接下 ...

  8. 带你手摸手搭建vuepress站点

    vuePress是什么? VuePress 俺简单介绍下,是国内有名大神的尤雨溪发布的全新基于 vue 静态网站的生成器,内置的有 webpack组件,可以拿来写文档,主要是md格式.做出的感觉就是简 ...

  9. 网站专题页必做的10个策划技巧与方法

    专题是一种推广方法,在你所运营的网站中,既可以将专题视为推广着陆页.也可视为优质内容输出方法!好专题不仅能为你带来流量,更能增加网站粘度.为网站品牌"锦上添花",尤其在医疗网站.教 ...

最新文章

  1. C++:读写二进制文件到double数组,根据二进制数据量进行读取
  2. CentOS安装crontab及使用方法
  3. 虚拟内存(VirtualAlloc),堆(HeapAlloc/malloc/new)和Memory Mapped File
  4. 05丨深入浅出索引(下)
  5. 基础练习 01字串(取位操作)
  6. XP中怎样让批处理文件运行后,不关闭dos窗口
  7. 关于c#调用c编译器
  8. oracle下载(转载)
  9. java timeout超时不抛异常_springCloud 请求超时解决方案 java.net.SocketTimeOut Exception: Read time out 异常解决...
  10. java 正则表达式 table_JavaEdge/Java/Java中正则表达式.md at master · VegTableBird/JavaEdge · GitHub...
  11. 震旦ad369s_震旦ad369s打印机驱动(震旦ad369s驱动程序) 安装版
  12. TextWatcher的使用
  13. CentOS7安装无线网卡驱动和更新yum源
  14. 全年数学建模相关比赛
  15. Spring Cloud Security OAuth2授权模式和资源服务器
  16. python3处理普通文件【open内置函数】
  17. php汉字转换拼音,php中怎么将中文转换拼音
  18. 互联网加速职场变革 大数据催生业界十大热门职业
  19. java使用java.lang.Math类,生成100个0-99之间的随机整数,并找出它们中间的最大值和最小值,并统计大于50的整数的个数。打印3次运行结果,看是否相同。
  20. Scrapy爬取贝壳网并存入csv

热门文章

  1. 来自原CSDN排名第一博主:成功的背后!(给所有IT人)
  2. Mac下安装homebrew(解决error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL)
  3. react and reduct 学习手记1
  4. linux测试读写的工具,Linux 下的硬盘读写速度测试工具
  5. Python每日一练——第1天:水仙花数
  6. 组合学:使用10个数字与52个字母生成1477万个不重复的4位串码V3完结版本
  7. 大文件传输软件-镭速——MAC版分享
  8. 直播界很火的无线领夹麦克风快充方案 Type-C接口 PD快充+无线麦克风可同时进行
  9. 毕业论文 | 基于安卓手机蓝牙控制的智能小车设计(源代码)
  10. Laravel 教程:使用Fast Excel解决导出超大 XLSX 文件(千万级)带来的内存问题