HEXO与Github.io搭建个人博客

HEXO搭建
    HEXO是基于Node.JS的一款简单快速的博客框架,能够支持多线程,支持markdown,可以将生成的静态网页发布到github.io以及coding上。
要使用搭建HEXO博客,先安装hexo
1.安装node.js

sudo apt-get install -y python-software-properties software-properties-common
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs

2.安装npm
    npm全名:Node Package Manager,是Nodejs的包管理器。
ubuntu16.04LTS自带nodejs和npm,但是版本较低,假如要安装最新的,先移除自带的。

sudo apt-get remove nodejs && sudo apt-get remove npm

再清理依赖包:

sudo apt-get autoremove

官网上下载nodejs:

cd  /opt && wget https://nodejs.org/dist/v4.4.5/node-v4.4.5-linux-x64.tar.xz
xz -d node-v4.4.5-linux-x64.tar.xz && tar vxf node-v4.4.5-linux-x64.tar

让任意目录可以访问,先配置环境变量

sudo vim /etc/profile

文件最后加上

export PATH=$PATH:/opt/node-v4.4.5-linux-x64/bin

也可以通过软链接,使得任意目录可访问
将node和npm链接到系统默认的PATH目录下的一个,软链接方式如下

ln -s /home/simon/node-v4.4.5-linux-x64/bin/node /usr/local/bin/node
ln -s /home/simon/node-v4.4.5-linux-x64/bin/npm /usr/local/bin/npm

同步文件配置:

source /etc/profile

查看版本:

node –version && npm –version

3.安装hexo
国外站点网速较慢,建议换成淘宝站点

npm install -g npm –registry=https://registry.npm.taobao.org
npm –version

接下来安装hexo-cli
切换到一个合适的目录下

npm install -g hexo-cli

下载完毕之后可以检测一下:
hexo –version
4.配置
hexo本地文件在安装插件的时候,最好都是用root身份执行,不然经常遇到一些问题
初始化本地路径

cd /home/simon/hexo && hexo init

生成node_modules

npm install

生成本地博客

hexo g
hexo server

在浏览器下输入http://localhost:4000,成功的话就生成hexo的标准界面

###部署到github
    新建一个repository,例如web(网上说要把名字设置成your_github_name.github.io这种格式,否则会404,但是我没有采用,也能生成)
修改hexo根目录下的_config.yml,新增关联仓库
deploy:
type: git
repository: https://github.com/yourID/web.git
branch: master
注意了,变量名之前要有两个空格,参数值前要有一个空格,通过:分割
假如格式不对,不能被识别,比如:
You should configure deployment settings in _config.yml first!

Available deployer plugins:
git

这样的错误
或者:FATAL remote: Repository not found.
完成之后,到github上完成部署
在项目的setting项找到Github Pages,生成项目
回到终端部署

hexo deploy

如果报错说缺少deployer:npm install hexo-deployer-git –save
打开 https://yourID.github.io/web/ 就可以看到效果,同时自己的github项目也会有文件更新
注:中途可能遇到github的配置问题,请尝试用ssh
ssh-keygen -C “username@email.com” -t rsa

Note: “username@email.com”需要更换成你在Github上注册的Email地址或者是Username
这样会在家目录生成一个公钥文件夹.ssh,其中id_rsa.pub是Github需要的SSH公钥文件。复制后粘贴到github上
hexo简写命令格式:

hexo g == hexo generate(生成静态网页)
hexo d == hexo deploy(部署)
hexo s == hexo server(测试)
hexo n xxx (new article)
hexo clean
hexo help

还有其他选项:
init 创建一个hexo项目
migrate 从其他系统向hexo迁移
version 查看hexo的版本
–config参数,指定配置文件,代替默认的_config.yml
–debug参数,调试模式,输出所有日志信息
–safe参数,安全模式,禁用所有的插件和脚本
–silent参数,无日志输出模式
hexo有许多的主题和插件,可以通过npm、git工具来进行下载,放在theme下
hexo根目录的目录及文件说明:

scaffolds 脚手架,也就是一个工具模板
scripts 写文件的js,扩展hexo的功能
source 存放博客正文内容
source/_drafts 草稿箱
source/_posts 文件箱
themes 存放皮肤的目录
themes/landscape 默认的皮肤
_config.yml 全局的配置文件
db.json 静态常量

_posts目录:Hexo是一个静态博客框架,因此没有数据库。文章内容都是以文本文件方式进行存储的,直接存储在_posts的目录。Hexo天生集成了markdown,我们可以直接使用markdown语法格式写博客,例如:hello-world.md。新增加一篇文章,就在_posts目录,新建一个xxx.md的文件。

themes目录:是存放皮肤的,包括一套Javascript+CSS样式和基于EJS的模板设置。通过在themes目录下,新建一个子目录,就可以创建一套新的皮肤,当然我们也可以直接在landscape上面修改。

###全局配置

_config.yml是全局的配置文件:很多的网站配置都在这个文件中定义。

站点信息: 定义标题,作者,语言
URL: URL访问路径
文件目录: 正文的存储目录
写博客配置:文章标题,文章类型,外部链接等
目录和标签:默认分类,分类图,标签图
归档设置:归档的类型
服务器设置:IP,访问端口,日志输出
时间和日期格式: 时间显示格式,日期显示格式
分页设置:每页显示数量
评论:外挂的Disqus评论系统
插件和皮肤:换皮肤,安装插件
Markdown语言:markdown的标准
CSS的stylus格式:是否允许压缩
部署配置:github发布
 
参考:http://www.tuicool.com/articles/y6JJV3Z(最详细)
http://www.cnblogs.com/purediy/archive/2013/03/07/2948892.html
http://www.aichengxu.com/other/10706481.htm
 
Technorati Tags: 博客

HEXO与Github.io搭建个人博客的更多相关文章

  1. 用Hexo在GitHub上搭建个人博客

    我用Hexo在GitHub上搭建好了自己的博客,我的这第一篇博客就来说说搭建的过程. 1 环境配置 本文使用环境如下: Windows 10 node.js v8.1.3 git v2.13.2 np ...

  2. HEXO+Git+Github+域名搭建个人博客

    搭建个人博客可以分为以下五个部分 一.搭建本地环境(个人为Win10) 1.安装Git,下载地址:点击 下载后,按提示进行安装即可,作用是:把本地的内容提交到github上去 注意:官网下载速度不是很 ...

  3. 使用Hexo在github上搭建个人博客

    最近正好在学习前端开发,想着搭建一个属于自己的个人博客,把自己的技能树整理整理,温故而知新. 如果你有前端开发经验,那么搭建这样的博客就很简单了. 一 什么是Hexo     Hexo 是一个快速.简 ...

  4. 关于采用github.io搭建个人博客

    创建github技术博客技术攻略 http://blog.csdn.net/renfufei/article/details/37725057/ 搭建一个免费的,无限流量的Blog----github ...

  5. 基于 Hexo + GitHub Pages 搭建个人博客(一)

    前言:我的博客写作之路 15 年刚上大学,第一次接触公众号,就萌生了创建一个公众号写点东西,但最终不了了之. 很快到了 16 年,开始接触网上各大博客网站,接触最多的当属 CSDN,萌生了注册一个博客 ...

  6. 基于 Hexo + GitHub Pages 搭建个人博客(二)

    在 基于 Hexo + GitHub Pages 搭建个人博客(一) 这篇文章中,我们已经知道如何使用 Hexo + GitHub Pages 搭建一个个人博客,GitHub 为我们提供了免费的域名和 ...

  7. 基于 Hexo + GitHub Pages 搭建个人博客(三)

    一.添加扫描二维码关注功能 打开 themes 目录下的 next 主题配置文件,找到 Wechat Subscriber 标签,将该标签下的配置改成如下形式: # Wechat Subscriber ...

  8. 使用Hexo + GitHub Pages 搭建个人博客

    一.前言 之前是在CSDN上写博客的,但是无奈其广告满天飞,还有因为个人不太喜欢CSDN博客里的一些东西,加上看到很多技术大牛都有自己的个人博客,于是乎!便想着搭建一个自己的个人博客.其实之前写博客还 ...

  9. 【一】Ubuntu14.04+Jekyll+Github Pages搭建静态博客

    本系列有五篇:分别是 [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面 [二]jekyll 的使用 :主要是jekyll的配置 [三]Markdown+ ...

随机推荐

  1. c++第三次作业

    GitHub地址 https://github.com/ronghuijun/3Elevators-scheduling 实现过程 一开始打算分成三个类来写的 因为想到电梯的功能不太一样 一个只能上1 ...

  2. VK Cup 2015 - Qualification Round 1 D. Closest Equals 离线+线段树

    题目链接: http://codeforces.com/problemset/problem/522/D D. Closest Equals time limit per test3 secondsm ...

  3. ACM 第二十天

    积性函数.杜教筛 练习题 莫比乌斯函数之和 51Nod - 1244 莫比乌斯函数,由德国数学家和天文学家莫比乌斯提出.梅滕斯(Mertens)首先使用μ(n)(miu(n))作为莫比乌斯函数的记号. ...

  4. JavaScript与OC的交互-WebViewJavascriptBridge

    WebViewJavascriptBridge实现了在使用UIWebView时JS与ios 的Objective-C nativecode之间的互相调用, 支持的功能有消息发送.接收.消息处理器的注册 ...

  5. 因为NLS_LANG 造成 Oracle数据库丢失 中文字符集兼容问题的处理.

    接着上一封blog. 因为sqlplus的 乱码问题 我修改了 注册表里面 NLS_LANG 的 value值.主要改动为: NLS_LANG source: SIMPLIFIED CHINESE_C ...

  6. 微信小程序组件 客服

    <!-- 话务 --> <view class='detail-tel flexca'> <image class='image-full' src='../../img ...

  7. lock 默认公平锁还是非公平锁?公平锁是如何定义?如何实现

    ReentrantLock的实现是基于其内部类FairSync(公平锁)和NonFairSync(非公平锁)实现的. 其可重入性是基于Thread.currentThread()实现的: 如果当前线程 ...

  8. Ajax修改全局变量问题解决方法(Zepto版)

    前两天项目遇到一个用ajax修改全局变量的案例,一开始无法给这个全局变量修改赋值,在网上查了一下,解决如下: 修改前: var word=1; $.ajax({ url:"myJSON.js ...

  9. Vue父组件与子组件传递事件/调用事件

    1.Vue父组件向子组件传递事件/调用事件 <div id="app"> <hello list="list" ref="child ...

  10. java catch 捕获异常后会产生一个实例对象 该对象能使用父类的方法