背景

写blog虽然经历了N多不同时代的产品,恒久不变的始终是自己无人问津的网站。虽然没几个人看,还是隔断时间就要折腾一下。从最开始的wordpress,到tale,到现在的hexo,网站变得越来越简单,越来越轻量级,这里主要说说hexo的使用。

hexo介绍

主页: https://hexo.io/zh-cn/

主页中有非常详细的介绍,主页中有介绍内容我这里就不赘述了,这里主要说说主页中没有详细说明内容。

  • hexo 可以理解为是基于node.js制作的一个博客工具,不是我们理解的一个开源的博客系统。其中的差别,有点意思。
  • hexo 正常来说,不需要部署到我们的服务器上,我们的服务器上保存的,其实是基于在hexo通过markdown编写的文章,然后hexo帮我们生成静态的html页面,然后,将生成的html上传到我们的服务器。简而言之:hexo是个静态页面生成、上传的工具。

源码结构

文件/文件夹 说明
_config.yml 配置文件
public 生成的静态文件,这个目录最终会发布到服务器
scaffolds 一些通用的markdown模板
source 编写的markdown文件,_drafts草稿文件,_posts发布的文章
themes 博客的模板

我们正常使用,修改最多的源码是_config.yml文件,不管是博客的基础配置,还是模板,都是修改这个文件。

source是我们日常写文章要用的目录,是我们日常操作的文件夹。

如果针对下载的模板修改,那么就需要操作themes了。hexo是用node.js编写的程序,所以theme的修改也是比较容易的。

使用

基本安装和使用直接参考官网即可,这里我主要说两个部分:

编写BLOG

官方新编写BLOG,建议的是使用命令:

hexo new [layout] <title>

其实,你可以直接在_drafts新建markdown文件,就是草稿了,在_posts新建markdown文件,就是发布的文章了。当然,记得在顶部加上相关的描述,如:

---
title: hexo——轻量、简易、高逼格的博客
date: 2018-08-31 17:54:54
tags:
- IT技术
- 前端
---

效果和命令新建文件,是一样一样的。

模板安装和使用

hexo为我们提供了非常多好看实用的模板,官网提供了很多模板,但是,针对模板的使用,只进行了非常简单的说明,这里以我自己的使用的模板Concise为例,进行详细的补充。

其实,模板的使用,简单来说,只需要两个步骤:

  • 将模板copy到themes目录,如:
git clone https://github.com/HmyBmny/hexo-theme-concise.git themes/concise
  • 修改_config.yml中的theme:
theme: concise

所有的模板,共有的操作方式就只有这两个,但是不同的模板,会有很多不同的设置,这里就需要针对模板的使用说明进行修改了。建议通过github找到模板,看下readme。如,我使用的Concise就需要修改:

author:
name: 公众号:itmifen
work: IT狗,程序猿,苦B奋斗的伪文中老年
location: 深圳, shenzhen
avatar_url: http://oe749te3z.bkt.clouddn.com/logo.png links:
github: https://github.com/itmifen

基本上,这样就能在本机进行预览使用了。

发布

现在比较流行的方式,都是将代码发布到git,因为我同时要传到github和自己的博客,所有我的处理方式就是:

先将代码传到github,再在自己的服务器获取github代码,服务器上自己部署一个nginx,解析静态网页即可。

先安装git插件:

npm install hexo-deployer-git --save

git的配置,修改_config.yml文件:

deploy:
- type: git
repository: git@github.com:itmifen/blog.git
branch: master

当然,只是这样肯定不行,你要确保你本地能git push到服务端,所以需要配置本地的ssh github私钥。没有操作过的同学,请自行搜索。 这样,我就可以将本地的文章通过hexo官方推荐的方式push到github:

hexo deploy

这样应该就能在你的github上看到上传的代码了,这时看到的应该是纯静态的一个站点。

既然代码已经上传了,那么只要在我的服务器配置好github和ssh私钥,就能顺利的pull代码了,当然,还需要写个crontab定时来拉取,不需要自己登录服务器操作了。

常见问题

执行deploy命令了,但是代码未上传?

先执行hexo generate命令,生成静态文件了,再执行hexo deploy上传,上传是只会上传public中生成的文件。

修改了模板,但是没有生效?

修改了模板以后不生效,建议先hexo clean,然后再hexo generate。只执行hexo generate,可能模板后者静态文件不会被替换。

预览不太方便?

开发环境提供了实时预览的方式,不需要每次都generate,执行命令:

hexo generate -w

系统会实时生成新的HTML,非常方便。


欢迎订阅我的公众号:ITmifen

hexo——轻量、简易、高逼格的博客的更多相关文章

  1. 不可思议的hexo,五分钟教你免费搭一个高逼格技术博客

    引言 作为程序员拥有一个属于自己的个人技术博客,绝对是百利无一害的事,不仅方便出门装b,面试时亮出博客地址也会让面试官对你的好感度倍增.经常能在很多大佬的技术文章的文末,看到这样一句话: " ...

  2. 使用Hexo建立一个轻量、简易、高逼格的博客

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_93 在之前的一篇文章中,介绍了如何使用Hugo在三分钟之内建立一个简单的个人博客系统,它是基于go lang的,其实,市面上还有一 ...

  3. Hexo+Github 高逼格个人博客搭建指南(准备篇)

    git 下载并安装git 进入git下载页面,下载合适的版本,并安装.一路 Next ,到了 Select Components 界面,勾选 Git Bash Here 和 Git GUI Here. ...

  4. 使用Coding.net+Hexo+node.js+git来搭建个人博客

    使用Coding.net来搭建基于Hexo的博客 一.准备工作 什么是Coding.net Coding可以说,就是国产的Github,但是,有一个功能使它似乎超越了GitHub-那就是 Web ID ...

  5. java高并发_博客-网址-资料 推荐

    大概说一下自己作为入门学习java高并发的博客地址,很不错在自己的博客里记录一下:如果能有刷到我的博客的骚年,又刚好想了解java高并发,强烈推荐看看 地址:http://www.itsoku.com ...

  6. 高质量iOS博客推荐

    https://www.jianshu.com/p/ea9fabdc12ed 原文地址 原作者记录了一些高质量ios博客地址,本文只做收藏使用.

  7. Hexo+Git一个小时快速搭建个人博客

    搭建本地环境:Hexo框架 Hexo为何物 Hexo 是一个快速.简洁且高效的博客框架.Hexo 使用Markdown解析文章,并瞬间利用靓丽的主题生成静态网页.其中,Markdown是一个用于将普通 ...

  8. iOS 9,为前端世界都带来了些什么?「译」 - 高棋的博客

    2015 年 9 月,Apple 重磅发布了全新的 iPhone 6s/6s Plus.iPad Pro 与全新的操作系统 watchOS 2 与 tvOS 9(是的,这货居然是第 9 版),加上已经 ...

  9. 用Hexo搭建属于自己的iOS技术博客,搬家了

    搬家了,本来还打算在博客园混一段时间的,可是当我看到Hexo的时候,已经难以抵挡它的诱惑,简单不简约的界面让我花了整整一天的时间,买域名的过程中发生一点小问题导致DNS解析错误了,但还是成功了.欢迎朋 ...

随机推荐

  1. linux 下的ssh

    ssh服务 1.检查是否有被安装,命令 rpm -qa|grep "ssh" 2.检查ssh有没有在运行,命令 rpm -qa|grep "ssh" 3.如何启 ...

  2. sql server系统表和视图相关的语句

    一.系统表 数据字典的详细信息请查SQL SERVER BOL,这里仅列出一部分. 1.1.sysservers 1.查看所有本地服务器及链接服务器 select * from master..sys ...

  3. 洗礼灵魂,修炼python(54)--爬虫篇—urllib2模块

    urllib2 1.简介 urllib2模块定义的函数和类用来获取URL(主要是HTTP的),他提供一些复杂的接口用于处理: 基本认证,重定向,Cookies等.urllib2和urllib差不多,不 ...

  4. 洗礼灵魂,修炼python(16)--列表进阶话题—>上节作业讲解+copy模块,浅拷贝,深拷贝

    上节课后作业: 1.使用列表解析输出结果:[(0,0),(0,2),(2,0),(2,2)] 方法1: 方法2: 方法3: 2.使用列表生成器打印斐波那契数列 3.使用列表解析生成列表[1x2,3x4 ...

  5. 两个列表lst1和lst2,计算两个列表的公共元素和非公共元素

    方法1: 列表推导式 lst1 = [1, 3, 7] lst2 = [3, 5, 4] a = [x for x in lst1 if x in lst2] b = [y for y in (lst ...

  6. 4.93Python数据类型之(8)集合

    目录 目录 前言 (一)基本概念 ==1.1有序于无序== ==1.2是否随机访问== ==1.3重复性== ==1.4可变与不可变的集合== (二)集合的增删改查 ==2.1集合的增加== ==2. ...

  7. 【16】有关python面向对象编程

    面向对象编程 一.第一个案例---创建类 #__author:"吉" #date: 2018/10/27 0027 #function: # 设计类: ''' 1 类名:首字母大写 ...

  8. SQL Server2008 18456错误

    1.以windows验证模式进入数据库管理器.   第二步:右击sa,选择属性:   在常规选项卡中,重新填写密码和确认密码(改成个好记的).把强制实施密码策略去掉.   第三步:点击状态选项卡:勾选 ...

  9. Tensorflow基本概念

    [本文摘自网络,仅供学习使用] 官网上对TensorFlow的介绍是,一个使用数据流图(data flow graphs)技术来进行数值计算的开源软件库.数据流图中的节点,代表数值运算:节点节点之间的 ...

  10. 【洛谷】【模拟+栈】P4711 「化学」相对分子质量

    [题目传送门:] [戳] (https://www.luogu.org/problemnew/show/P4711) [算法分析:] 关于一个分子拆分后的产物,一共有三种情况: 原子 原子团 水合物 ...