C_教程_用Hexo搭建个人博客

titledatetagscategories
用Hexo搭建个人博客
2019-03-01 10:11:45 -0800
Git
技术

Motivation

(闲扯,无关技术) 从2016年接触github之后,就有写一个自己的博客的想法。目前市面上的博客平台也还是有很多的,比如新浪博客、豆瓣、知乎专栏、CSDN、博客园、简书.... 这些网站各有优劣,而且侧重点不同。有的偏技术,比如CSDN、博客园,有的很文艺,比如豆瓣、新浪博客,有的更加具有严谨性和学术性,比如知乎。我的要求是:

  1. 要可以记录一些自己安装软件、学习软件的教程,所以要对代码高亮支持的很好。
  2. 可以写一下自己的随笔、感悟。
  3. 可以写自己对学术问题的思考,比较浅显的思路那种。

想来想去还是你自己搭建一个博客吧,这些功能都可以实现,网上搜索了很多搭建个人博客的例子,有用wordpress的,有用python的,提到的最多的就是github.一步步按照注册、安装,最开始的jkelly实现,老是报错和失败,就放弃了。 去年过年回去比较闲,又开始捣鼓,生命不息、捣鼓不止。。。。尝试打算用Python,被一篇文章吸引https://blog.csdn.net/BF02jgtRS00XKtCx/article/details/81611904 由于这种方法需要一些python的库,而且编译需要c++14,我不想再笔记本装太多东西,选择放弃。 开始尝试Hexo,还详细比较了Jkelly和Hexo的区别。真的不想再弄jkelly了,不记得耽误了多久的时间依然各种报错。。。Hexo搭建主要借助了知乎上的一篇文章: https://zhuanlan.zhihu.com/p/26625249 这篇文章讲的很细致,实现基本的功能很快,后来为了捣鼓评论、背景图片,又花了很久。总共花了有三天,慢慢的把网站弄好了,功能也更加齐全,在这里将做的过程以及中间遇到的问题详细列下来,希望对自己、对别人都会有帮助~ (2019 03 01 今天就写到这里吧,慢慢补充)

准备工作

下载cmder

cmder是一款可以在windows系统输入linux命令的软件,我们直接在官网下载安装, https://cmder.net/ 我下载的是含有git的版本,文件较大,下载下来之后,解压放在一个不需要管理员权限的位置,然后将对应的路径添加到环境变量,就可以“win+R”里输入cmder打开了,不过这还不方便,我们希望也可以像ubuntu一样,右键之后在当前文件夹打开,此时需要管理员权限运行cmd,输入

Cmder.exe /REGISTER ALL

这样Cmder就配置完成了.

安装Hexo

我们使用Hexo来生成静态网页,为了安装Hexo,我们需要首先安装node.js: https://nodejs.org/en/download/ 下载安装之后,可以在命令行(Win+R然后输入CMD)用

node -v
npm -v

来查看版本,确定node.js和npm是否安装成功。接下来安装Hexo,同样在命令行里面输入

npm install -g hexo-cli 

安装好之后,我们就可以找文件夹创建网页了。

基本功能的实现

创建网页部署在本地

有了Hexo,此时选择一个我们打算用来放网站的文件夹,命令行中输入

hexo init blog

就会生成一个名字为"blog"的文件夹,打开这个文件夹,我们会发现里面已经有了基本的文件,暂时不管每个文件的功能,在blog文件夹里面输入

hexo g

就会生成一个静态的网页,再输入

hexo s

就会将静态博客部署再本地了,打开浏览器,输入地址:http://localhost:4000/ 就可以查看预览网页了。此时我们可以尝试插件一篇文章

hexo new <文章名字>

此时查看站点文件夹source目录的_post文件夹,可以看见已经多了一个<文章名字>.md的文件,稍微编辑下,就可以浏览器看到了。

部署到github

设置github

上面的静态的网页需要部署到网络上别人才可以访问,我们选用github来托管。首先当然是注册github,注册之后,添加一个Repositories,命名为"<你的github用户名>.github.io".注册好之后,我们就可以用来托管我们的网页了。前面我们安装的cmder已经安装了git,为了可以使用git,我们还需要初始化git,设置user.name和user.email配置信息,打开cmder,输入

git config --global user.name "你的GitHub用户名"
git config --global user.email "你的GitHub注册邮箱"

生成ssh密钥文件

ssh-keygen -t rsa -C "你的GitHub注册邮箱"

找到生成的.ssh的文件夹中的id_rsa.pub密钥,将内容全部复制,打开自己github的设置,新建new ssh key,名称可以随便写,再key的一栏输入刚才复制的内容保存即可。

安装deployer插件

和此时需要再安装一个插件来deploy我们的网页到github,安装软件

npm install hexo-deployer-git --save

安装成功之后,更改blog文件夹里面的_config.yml,里面是我们的配置信息,里面搜索关键字deploy,修改为如下所示

deploy:
  type: git
  repo: git@github.com:<your name>/<your name>.github.io.git
  branch: master

这一步非常重要,格式不正确就会出错,比如type是git,不是github,冒号后面还有一个空格等。此时我们就可以将我们的网页发布到github了。输入

hexo clean #清除生成的网页文件
hexo g #生成静态网页
hexo d #发布到github

此时打开对应的网页:https://.github.io 就可以看到已经部署成功了。当然,此时网站还只是默认设置,怎么发布新文章,怎么修改主题,变成我们需要的风格呢?接下来介绍一些花里胡哨的功能的实现~

Next主题的配置

Hexo主题很多,网页上选择非常多,https://hexo.io/themes/ 查阅了很多的文章,大家比较推崇的主题是Next,主要是功能齐全,对于不会太多网页编程知识的人来说,最好了。

Next主题的安装

找一个文件夹下载主题

git clone https://github.com/theme-next/hexo-theme-next.git

删除掉里面.github的文件之后,复制到我们博客文件的themes文件夹内,里面已经有了一个默认的主题文件landscape.为了使用next主题,我们到站点目录的配置文件_config.yml里面,知道theme那一行,改为

theme: next

此时,再输入命令

hexo g 
hexo s

就可一查看我们的新的主题文件了。

配置个人信息

为了让博客具有我们的个人风格,我们需要将一些地方改成自己的信息,首先修改站点目录的配置文件

# Site
title: Knifelees3's blog #博客名字
subtitle: #副标题
description: #类似于个性签名?
keywords: #关键词
author: Zhao Hua #作者名字
language: zh-CN #语言
timezone: #时间轴

然后修改/theme/next/_config.yml文件,里面的内容就更加丰富了,不过都有注释,会点英语的应该都可以看得懂。这篇文章 https://zhuanlan.zhihu.com/p/30836436 也有非常详细的介绍,我就不再赘述。在这里我需要强调的是关于怎么更换头像的问题,貌似新版的语法不一样了,以前的写法

avatar: /images/avatar.gif

但是next 7.0版本却是

avatar:
	url: /images/avatar.gif

在这里浪费了好久的时间....

添加评论系统

评论系统本来貌似蛮多的,不过后来都相继的死掉了,我用的是Valine,在这之前需要注册Leancould,验证邮箱和绑定手机号,然后点击创建应用>开发版,建好之后点击进入到应用中,依次点击设置>应用Key得到AppID和AppKey,这是安全域名,设置自己的网页地址即可。由于next最新版本的主题已经自己集成了Valine,只需要在主题配置文件找到Valine字段,改成下面的形式即可(输入刚才的Leancould的appid,appkey):

# Valine
# You can get your appid and appkey from https://leancloud.cn
# More info available at https://valine.js.org
valine:
  enable: true # When enable is set to be true, leancloud_visitors is recommended to be closed for the re-initialization problem within different leancloud adk version.
  appid:  # your leancloud application appid
  appkey:   # your leancloud application appkey
  notify: false # mail notifier, See: https://github.com/xCss/Valine/wiki
  verify: false # Verification code
  placeholder: Just go go # comment box placeholder
  avatar: mm # gravatar style
  guest_info: nick,mail,link # custom comment header
  pageSize: 10 # pagination size
  visitor: true # leancloud-counter-security is not supported for now. When visitor is set to be true, appid and appkey are recommended to be the same as leancloud_visitors' for counter compatibility. Article reading statistic https://valine.js.org/visitor.html
  comment_count: true # i

添加阅读统计

还是使用前面注册的leancloud,插件新的应用,在应用里面新建Class,命名为"Counter"(必须命名为Counter,Next主题才可以识别),然后和前面的一样,在配置文件搜索Leancloud,加入appid,appkey,如下

leancloud_visitors:
  enable: true
  app_id: your appid
  app_key: your appkey
  # Dependencies: https://github.com/theme-next/hexo-leancloud-counter-security
  # If you don't care about security in leancloud counter and just want to use it directly
  # (without hexo-leancloud-counter-security plugin), set `security` to `false`.
  security: true
  betterPerformance: false

至此我们的网页就设置好了,一些其他的设置都可以参考这篇博文 https://zhuanlan.zhihu.com/p/30836436

插入图片

Markdown插入图片,可以通过将图片一起上传到github,这样图片多了,每次发布都会比较慢,所以插入在线的图片最好,图床很多人推荐七牛云,我没有选择这种方式,而是创建了一个新的Repositories,专门用来存放图片,图片的图床地址可以通过在github下载图片得到。需要注意的是,自己的非常注意图片的命名分类,不然以后多了就会难以找到自己想要的图片了。

以后有新的问题和心得也会在这篇文章里面持续更新。

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。、可私 6信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。、可 6私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。、可私 6信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值