一文搭建自己博客/文档系统:搭建,自动编译和部署,域名,HTTPS,备案等(2)

本文涉及的产品
.cn 域名,1个 12个月
简介: 一文搭建自己博客/文档系统:搭建,自动编译和部署,域名,HTTPS,备案等

一文搭建自己博客/文档系统:搭建,自动编译和部署,域名,HTTPS,备案等(1)https://developer.aliyun.com/article/1548918

文档搭建插件和配置

这里主要介绍文档搭建除了默认加载的配置和插件之外,新增加的插件和配置。

添加文档附加样式配置: 主题

注意很多网上的例子还是基于老的版本的,甚至我用vuepress的时候,官网还没有更新过来。

最佳配置请参考: 这里: (其它官网的配置都没有更新)

  • index.styl - 覆盖的样式
.custom-page-class{
    /* 自定义的样式 */
}
 
// markdown blockquote
blockquote
  font-size 1rem
  color #2c3e50;
  border-left .5rem solid #42b983
  background-color #f3f5f7
  margin 1rem 0
  padding 1rem 0 1rem 1rem
 
  & > p
    margin 0
 
// markdown h2
h2
  font-size 1.65rem
  padding-bottom 1rem
  border-bottom 1px solid $borderColor
  • palette.styl - 样式配置覆盖
// 内容的宽度
$contentWidth = 100%
 
// 颜色
$accentColor = #3eaf7c
$textColor = #2c3e50
$borderColor = #eaecef
$codeBgColor = #282c34

添加返回最上插件

文章很长,添加右下角一键返回顶部按钮,官网提供了 back-to-top 插件.

安装

yarn add -D @vuepress/plugin-back-to-top@next
# OR npm install -D @vuepress/plugin-back-to-top@next

使用

module.exports = {
  plugins: ['@vuepress/back-to-top']
}

插件使用你还可以参考:插件官网

添加图片缩放插件

图片缩放可以使用@vuepress/plugin-medium-zoom插件,它基于medium-zoom 插件。

yarn add -D @vuepress/plugin-medium-zoom@next
# OR npm install -D @vuepress/plugin-medium-zoom@next

简单使用:

module.exports = {
  plugins: ['@vuepress/medium-zoom']
}

自定义选项:

module.exports = {
  plugins: {
    '@vuepress/medium-zoom': {
      selector: 'img.zoom-custom-imgs',
      // medium-zoom options here
      // See: https://github.com/francoischalifour/medium-zoom#options
      options: {
        margin: 16
      }
    }
  }
}

效果可以点击本文中的图片查看, 具体使用你可以参考: 插件官网

添加评论插件

代码托管平台遵从 OAuth 2 spec 提供了 OAuth API。Vssue 利用平台提供的 OAuth API,使得用户可以登录并发表评论。那么有哪些评论插件可以使用?这里使用Vssue,它比较新,可能知道的人还不多。@pdai

Vssue , GitalkGitment,为何选择Vssue:

  • Vssue 支持 Github、Gitlab 和 Bitbucket,并且很容易扩展到其它平台。GitmentGitalk 仅支持 Github。
  • Vssue 可以发表、编辑、删除评论。GitmentGitalk 仅能发表评论。
  • Vssue 是基于 Vue.js 开发的,可以集成到 Vue 项目中,并且提供了一个 VuePress 插件Gitment 基于原生JS,而 Gitalk 基于 Preact

下面是 Vssue 的简要工作过程:

用户在平台的授权页面允许 Vssue 接入后,平台会带有 codetoken 重定向回 Vssue 的页面(如果是 code ,Vssue 则会根据 code 向平台请求 token)。

Vssue 获取 token 后,会将 token 存储在 localstorage 中,于是用户就成功使用平台的帐号“登录”到了 Vssue。

接下来, Vssue 就可以获取用户的基本信息、获取当前页面的评论,用户也可以发表评论了。

添加如下配置:具体参考Vssue 官网教程

plugins: {
  '@vssue/vuepress-plugin-vssue': {
    // 设置 `platform` 而不是 `api`
    platform: 'github',
 
    // 其他的 Vssue 配置
    owner: 'OWNER_OF_REPO',
    repo: 'NAME_OF_REPO',
    clientId: 'YOUR_CLIENT_ID',
    clientSecret: 'YOUR_CLIENT_SECRET',
  },
},

效果如下:

添加Vuepress文档的导出

导出页面只在我本地开放,线上功能我暂时关闭了。

自己写了文档PDF的导出功能(Page, Group, Current是我导出功能里的代号): Page = Group1+...GroupN, Group = Current1+...CurrentN

  • 当前页面导出
  • Group页面导出:主要用来导出一组或者多组章节下面的所有文章。
  • Page页面导出

SpringBoot部分章节导出为例,导出效果如下:

添加svg label标签

你是不是常看到别人的项目中加了这种标签?这种标签主要基于svg,主要有两种:

添加后效果(状态为自动获取):

添加百度统计

注意百度统计添加, 考虑在每个页面点击时作记录,在enhanceApp.js中拦截router:

export default ({router}) => {
    router.beforeEach((to, from, next) => {
        // @pdai: 对每个页面点击添加百度统计
        if(typeof _hmt!='undefined'){
            if (to.path) {
                _hmt.push(['_trackPageview', to.fullPath]);
            }
        }
        
        // continue
        next();       
    })
};

百度统计里某个页面效果如下:

添加Copy自动加版权信息

复制你网站时,禁用复制或者添加版权信息等。

安装

npm install vuepress-plugin-copyright

配置

// .vuepress/config.js
module.exports = {
  plugins: [
    [
      'copyright',
      {
        noCopy: true, // 选中的文字将无法被复制
        minLength: 100, // 如果长度超过 100 个字符
      },
    ],
  ],
}

效果, 拷贝本页面会自动添加:

著作权归 xxxx 所有。
链接:https://www.pdai.tech/md/about/blog/blog-build-vuepress.html

更多请参考插件:vuepress-plugin-sitemap

添加SEO优化

这里给个链接供参考,我这边自己添加的meta信息没有用它。

添加百度站点自动推送

主要用于向百度站点自动推送,有助于SEO。

安装

npm install -D vuepress-plugin-baidu-autopush

添加配置

module.exports = {
  plugins: [
    'vuepress-plugin-baidu-autopush'
  ]
};

更多请参考插件:vuepress-plugin-baidu-autopush

一文搭建自己博客/文档系统:搭建,自动编译和部署,域名,HTTPS,备案等(3)https://developer.aliyun.com/article/1548924

相关文章
|
4天前
|
运维 Serverless 数据处理
函数计算产品使用问题之海外域名是否需要备案
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
4天前
|
运维 Serverless 数据处理
函数计算产品使用问题之是否可以用来给域名备案
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
4天前
|
存储 弹性计算 Serverless
函数计算产品使用问题之使用的是自定义域名并且已备案,出现“无法访问此网站”,是什么原因
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
5天前
|
JavaScript Java 应用服务中间件
一文搭建自己博客/文档系统:搭建,自动编译和部署,域名,HTTPS,备案等(4)
一文搭建自己博客/文档系统:搭建,自动编译和部署,域名,HTTPS,备案等
|
5天前
|
SEO
一文搭建自己博客/文档系统:搭建,自动编译和部署,域名,HTTPS,备案等(3)
一文搭建自己博客/文档系统:搭建,自动编译和部署,域名,HTTPS,备案等
|
存储 安全 网络安全
HTTPS 部署简要指南
许多Web开发者都知道SSL,但常见的情况是SSL没有完整地部署或者没有部署在它应该部署的地方。这篇关于何时及如何部署SSL的简要指南,将帮助你避免大多数常见错误。
410 0
|
2月前
|
前端开发
webpack如何设置devServer启动项目为https协议
webpack如何设置devServer启动项目为https协议
402 0
|
3天前
|
安全 网络协议 网络安全
IP代理的三大协议:HTTP、HTTPS与SOCKS5的区别
**HTTP代理**适用于基本网页浏览,简单但不安全;**HTTPS代理**提供加密,适合保护隐私;**SOCKS5代理**灵活强大,支持TCP/UDP及认证,适用于绕过限制。选择代理协议应考虑安全、效率及匿名需求。
|
26天前
|
安全 前端开发 中间件
中间件中HTTP/HTTPS 协议
【6月更文挑战第3天】
18 3
|
3天前
|
数据安全/隐私保护
数据防护之=HTTPS协议增加了<数据加密>
数据防护之=HTTPS协议增加了<数据加密>