什么是Hexo

简单的来说,Hexo是一款基于Node.JS的静态博客框架,官方给它的描述是“A fast, simple & powerful blog framework”。据说它是出自台湾大学生Tommy Chen之手,官方网站是https://hexo.io,不由感叹台湾大学生的创造力,当然大陆的大学生也是很厉害的,只不过表现在不同方面而已。说远了,言归正传,它有什么特殊之处呢,我没有怎么接触过Node.JS,所以在其代码方面没有什么发言权,就说一下使用上的特点,首先生成速度非常快,可以使用Markdown进行编辑,操作非常简单,一键生成部署到GitHub Pages等(当然自己有空间的部署在自己的空间上也是OK的),所有平台可用,还有好多主题啊、插件啊之类的。

#### 我为什么用Hexo
当初准备搭建个人Blog时是准备在GitHub上搭建,省时省钱省力,GitHub推荐的是使用Jekyll,也是一款静态博客框架,了解了一下它是基于Ruby开发的,之前完全没有接触过Ruby,又不想单单为了写个Blog再去从头学Ruby,倒腾了一上午发现太麻烦了,偶然间发现了Hexo,感觉还挺不错,看了一下文档发现还是非常easy的,于是乎就用了Hexo。

#### Hexo的安装步骤
网上有很多Hexo的安装教程,为什么还要写呢,主要是我发现网上教程有些地方写的不是很明白,同时也是做一下记录吧。
##### 1. 安装环境
+ Windows10 64bit
+ Node 4.2.2
+ npm 2.14.7
+ Hexo 3.1.1

2. Node环境安装
  • Windows上直接到官网上下载安装包打开安装就OK了。
  • Linux上也是下载对应的编译好的包,然后解压,解压完之后进入bin目录执行就可以了,如果嫌麻烦可以建立一下链接:
  1. ln -s node目录/bin/node /usr/local/bin/node
  2. ln -s node目录/bin/npm /usr/local/bin/npm

下面可以用npm version命令试一下有没有安装成功,成功的话会有如下显示:

  1. $ npm version
  2. { 'hexo-site': '0.0.0',
  3. npm: '2.14.7',
  4. ares: '1.10.1-DEV',
  5. http_parser: '2.5.0',
  6. icu: '56.1',
  7. modules: '46',
  8. node: '4.2.2',
  9. openssl: '1.0.2d',
  10. uv: '1.7.5',
  11. v8: '4.5.103.35',
  12. zlib: '1.2.8' }

到此,node环境就安装完成了。

3. 使用npm安装Hexo
  1. npm install hexo-cli -g

然后用hexo version命令可以确认一下有没有安装成功,成功的话会有如下显示:

  1. $ hexo version
  2. hexo: 3.1.1
  3. os: Windows_NT 10.0.10240 win32 x64
  4. http_parser: 2.5.0
  5. node: 4.2.2
  6. v8: 4.5.103.35
  7. uv: 1.7.5
  8. zlib: 1.2.8
  9. ares: 1.10.1-DEV
  10. icu: 56.1
  11. modules: 46
  12. openssl: 1.0.2d

到此,Hexo就安装完成啦。

如何使用的部分,下一篇再写吧。

用Hexo搭建属于自己的Blog的更多相关文章

  1. 使用Hexo搭建专属Blog

    喜欢折腾的自己最开始在博客园有仿写几篇Blog,虽也可以自己改变风格,可是到底不是独立的一块儿地方,要知道独立的才是自己的;有属于自己独立的域名和Blog,真真是一件很爽的存在.在各种大牛的分享下在G ...

  2. 採用Hexo 搭建Team Blog

    採用Hexo 搭建Team Blog 首先你要会使用Git 已经GitHub,然后让我们了解下什么是静态Blog 静态博客是指 不须要数据库驱动,拥有丰富模板,通过模板标记语言生成简单html css ...

  3. Hexo搭建个人blog

    Hexo搭建 现在只想说心累... 前几天看了几个牛人的blog,感觉他们的风格很舒服,然后就发现了Hexo这个好东西!激动的想马上自己也弄一个,昨天晚上开始看资料特别是:潘柏信写了两篇 HEXO搭建 ...

  4. Hexo 搭建 Blog 精简笔记

    安装Hexo npm install -g hexo-cli Mac 用户 您在编译时可能会遇到问题,请先到 App Store 安装 Xcode,Xcode 完成后,启动并进入 Preference ...

  5. 用hexo搭建自己的blog

    一.工具准备: 1.1 安装node 作用:用来生成静态页面的 到Node.js官网下载相应平台的最新版本,一路安装即可. 1.2 安装Git 作用:把本地的hexo内容提交到github上去. 安装 ...

  6. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置

    前言 有朋友问了我关于博客系统搭建相关的问题,由于是做开发相关的工作,我给他推荐的是使用github的gh-pages服务搭建个人博客. 推荐理由: 免费:github提供gh-pages服务是免费的 ...

  7. 使用 GitHub 和 Hexo 搭建个人独立博客

      Wordpress这类博客系统功能强大,可对与我只想划拉的写点东西的人,感觉大材小用了.而且wp需要部署,网站的服务器也会带来问题,国内的服务器首先需要备案,费用不低:国外服务器访问速度受影响.近 ...

  8. 利用Hexo搭建个人博客-博客初始化篇

    上一篇博文 <利用Hexo搭建个人博客-环境搭建篇> 中,我们讲解了利用Hexo搭建个人博客应该要配置哪些环境.相信大家已经迫不及待的想要知道接下来应该要怎么把自己的博客搭起来了,下面,让 ...

  9. 利用Hexo搭建个人博客-环境搭建篇

    我是一个爱写博客进行总结分享的人.然而,有着热爱写博客并且深知写博客好处的我,却没有好好的把这个习惯坚持下来.如今毕业已经一年多了吧,每一次与师弟师妹们聊天,我总会意味深长的建议他们,一定要定期梳理总 ...

随机推荐

  1. centos node卸载

    1.通过包管理工具 如果是通过包管理工具安装的话,那就和包管理工具卸载 yum remove nodejs npm -y 2.手动 如果是通过手动安装:官方下载后安装 进入到安装的路径 cd /opt ...

  2. POJ 2395 Out of Hay(最小生成树中的最大长度)

    POJ 2395 Out of Hay 本题是要求最小生成树中的最大长度, 无向边,初始化es结构体时要加倍,别忘了init(n)并查集的初始化,同时要单独标记使用过的边数, 判断ans==n-1时, ...

  3. statistic学习笔记

    1. 假设检验:就是对于符合一定前提条件的数据,先作一个假设H0,还有一个备择假设H1(一般是H0的反面,或者是H0不包含的情况),通过一定的计算公式,算出一个值(比如开方检验就是开方值),这个值的理 ...

  4. Spring依赖注入的三种方式

    看过几篇关于Spring依赖注入的文章,自己简单总结了一下,大概有三种方式: 1.自动装配 通过配置applicationContext.xml中的标签的default-autowire属性,或者标签 ...

  5. 谈谈PHP、Python与Ruby

    假如你想帮他尽快找个活儿,赚到钱,推荐PHP. 假如你想让他成为一个高效工程师,推荐 Python. 假如你想让他爱上他的工作,推荐 Ruby. 语言的选择 编程语言非常重要,不要认为他们都图灵等价, ...

  6. php 随机显示据今天30天内的任意一天

    function randomDate() { //echo date( "Y-m-d H:m:s", $newtime); //echo date("Y-m-d H:m ...

  7. 使用飞信api接口实现短信发送(只能发送好友)

    找了很久才找到一个能用的飞信API接口(http://quanapi.sinaapp.com/fetion.php?u=飞信登录手机号&p=飞信登录密码&to=接收飞信的手机号& ...

  8. codeforces 235 B. Let's Play Osu!

    You're playing a game called Osu! Here's a simplified version of it. There are n clicks in a game. F ...

  9. C# RGB与16进制颜色转换方法

    http://www.cnblogs.com/goldarch/archive/2010/08/16/1801053.html #region [颜色:16进制转成RGB]        /// &l ...

  10. SCALA常规练习B

    package com.hengheng.scala class Point(val x : Int, val y : Int) { val isOriginal : Boolean = { x == ...