为何搭建个人博客
一直想搭建自己的个人博客,写博客可以记录我的学习笔记、总结经验、分享技术等等。本来csdn、博客园都可以写博客,但作为一名程序猿,还是想拥有属于自己的个人博客~~
但是因为我是一个Android程序猿,会点前端,不会开发后台,一直没有开工...
最近一个朋友跑来说他想搭建自己的个人博客,然后后台由他开发,前台由我开发,一下子又激起了我搭建个人博客的兴趣...
于是很快设计出了以下几个界面:
但是由于各种原因,我了解到Hexo+github可以迅速搭建静态博客,并且有评论分享等功能,主题可以自定义。于是各种折腾,所以有了这个博客和这篇文章~~
OK,废话不多说,下面开始记录如何用Hexo+github搭建个人静态博客
Hexo+github搭建个人静态博客
配置环境
首先说明下,因为我用的是Mac os系统,所以下面所说的都是基于Mac环境,不过出了安装有点区别,其他操作基本一样
我所使用的版本:
- git: 2.10.0
- node.js: 7.2.0
- hexo: 3.2.2
安装git
- 先下载git
- 下载完打开文件,双击里面的.pkg文件进行安装(跟着它步骤安装,很简单)
- 安装完后,打开iTerm(终端),输入<code>git --version</code>,能查看到版本号就说明安装成功了
安装node.js
安装node.js可以去官网下载安装包安装,也可以用命令行安装,我这里选择用命令行安装(其实是不知道为什么,在官网下载的安装器一直安装出错...)
- 首先确保你有Ruby环境,Mac下自带ruby
- 打开iTerm(终端),输入ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 安装Homebrew
- 安装Homebrew后, 同样输入<code>brew -v</code>查看是否安装成功,然后输入<code>brew install node</code>安装node,安装完同样查看版本号<code>node -v</code>
- 测试,新建文件,输入以下内容:
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello Node.js\n');
}).listen(8080, "127.0.0.1");
console.log('Server running at http://127.0.0.1:8080/');
- 保存为test.js,然后在该文件目录下打开终端,输入<code>node test.js</code>看到"Server running at http://127.0.0.1:8080/"之后在浏览器输入<code>http://127.0.0.1:8080</code>能正常显示"Hello Node.js"则说明安装成功!
安装Hexo
Hexo github地址:https://github.com/hexojs/hexo
Hexo 官网地址:https://hexo.io/
终于到了主题了,git跟node装好后,接下来就是安装Hexo,很简单,命令行输入<code>npm install -g hexo</code>
安装完成后接下来就是初始化Hexo,新建文件夹blog,在该目录下打开终端,执行命令<code>hexo init</code>然后它会自动在blog文件夹下生成一些配置文件,这个blog文件夹就是博客的根目录。
测试Hexo
在blog目录下打开终端
先执行<code>hexo generate</code>(下面会解释这些命令的作用)
然后执行<code>hexo server</code>
然后在浏览器输入<code>localhost:4000</code>就能显示你的博客了
可能会觉得这个界面很不好看,没关系,这只是Hexo带的默认主题,不满意可以自己修改、替换主题,甚至自己制作主题,后面会写我的主题的折腾记录。。。
到此Hexo本地博客就搭建完成。
配置github
建立repository
注册github账号我就不说了,建立respository如图所示:
如上图所示,repository名称为<code>你的用户名.github.io</code>,项目为public一定要这样写然后点击<code>create repository</code>即可建立
把本地博客部署到github上
在刚才搭建的blog文件夹中,有<code>_config.yml</code>这个文件,用编辑器打开,找到这一项:
deploy:
type: git
repository: https://github.com/smileysx/smileysx.github.io.git
branch: master
- 其中type填写git,在老的版本可能是填写github,现在新版本是填写git
- repository填写刚刚建立的repository的地址
- branch则填写master,表示那项目的主分支
然后执行命令<code>npm install hexo-deployer-git --save</code>
接着执行命令<code>hexo deploy</code>就可以把博客部署到github上了
然后在浏览器输入<code>http://smileysx.github.io</code>就可以看到你的博客了,其中smileysx是我的用户名,这个改为你的用户名就可以了。
Hexo配置文件
这里简单说下_config.yml配置文件
#博客标题(博客名)
title: Yusxon's Blog
#博客二级标题(个人简介)
subtitle: 认识,了解,探索,超越
#博客描述
description:
#作者
author: Yusxon
#语言
language: zh-Hans
...
...
#Extensions
##Plugins: https://hexo.io/plugins/
##Themes: https://hexo.io/themes/
#博客使用的主题
theme: yelee
Hexo常用命令
新建文章
<code>hexo new "文章名字"</code>,可以简写为<code>hexo n "文章名字"</code>
新建的md文件在blog/source/_posts/文章名字.md
新建页面
<code>hexo new page "页面名字"</code>
新建的文件夹在blog/source/页面名字
生成静态页面
<code>hexo generate</code>,可以简写为<code>hexo g</code>
编译后,会出现一个public文件夹,里面将所有的md文件编译成html文件及一些css,js,图片等文件
开启本地服务
<code>hexo server</code>,可以简写为<code>hexo s</code>
开启本地服务,即可以在本地浏览器浏览博客,默认端口为4000,按<code>ctrl+c</code>可关闭服务
部署
<code>hexo deploy</code>,可以简写为<code>hexo d</code>
将本地博客部署到关联的github上
清除public文件夹
<code>hexo clean</code>
当source文件夹中的部分资源更改过之后,特别是对文件进行了删除或者路径的改变之后,需要执行这个命令,然后重新编译。也可以删除blog目录下的db.json文件再重新编译。