MAC下搭建Hexo博客
一、前言
Hexo是一款快速、简洁,基于node.js的强力框架。
(1)超快速度:Node.js 所带来的超快生成速度,让上百个页面在几秒内瞬间完成渲染。
(2)支持markdown:Hexo 支持 GitHub Flavored Markdown 的所有功能,甚至可以整合 Octopress 的大多数插件。
(3)一键部署:只需一条指令即可部署到 GitHub Pages, Heroku 或其他网站。
(4)丰富的插件:Hexo 拥有强大的插件系统,安装插件可以让 Hexo 支持 Jade, CoffeeScript。
二、环境搭建
(1)安装Node.js,官网直接下载即可。
(2)安装git,Mac下安装Xcode自带git或者终端输入(我这里用的是homebrew)
sudo brew install git
三、GitHub相关
(1)注册github账号(不多说)
(2)新建一个仓库
需要注意的是新创建的仓库的名字,必须是username.github.io。比如我的username是EricCJJ,所以仓库的名字便是EricCJJ.github.io。
(3)配置SSH Key(可以不配置,配置了就不用每次输用户名和密码了)
cd ~
ll -a
cd .ssh
ll -a
检查终端输出的文件列表中是否已经存在id_rsa.pub 或 id_dsa.pub 文件,如果文件已经存在,则直接进入第(4)步
不存在的话也不用急,现在我们就建立一个SSH Key。在终端输入如下命令:
ssh-keygen -t rsa -C "your_email@example.com"
邮箱是注册GitHub的邮箱。按下回车,让你输入文件名,直接回车会创建使用默认文件名的文件(推荐使用默认文件名),然后会提示你输入两次密码, 可以为空,直接回车就行。
(4)添加SSH Key到Github
如果你没有指定文件名(也就是使用的默认文件名),那么你的.ssh文件夹下,应该有一个id_rsa.pub文件了,打开该文件,复制里面的文本。登录GitHub,点击头像打开settings,再点击SSH and GPG keys,然后点击new SSH key,tittle随便写,再将刚才复制的内容粘贴到Key中即可。
(5)检测SSH Key是否配置成功
终端输入如下命令
ssh -T git@github.com
如果出现如下内容:Are you sure you want to continue connecting (yes/no)? 直接yes就行
最后出现:
Hi EricCJJ! You've successfully authenticated, but GitHub does not provide shell access.说明成功了。
四、安装Hexo
(1)终端输入如下命令
sudo npm install -g hexo
(2)再任意位置创建一个文件夹,比如:Hexo,cd到该路径下,执行命令:
sudo hexo init
(3)安装依赖包
sudo npm install
(4)在对应的文件夹下执行
sudo hexo g
sudo hexo s
在浏览器输入http://localhost:4000/ 就可以进行查看了。这个博客是本地的,别人是无法访问的,之后我们需要部署到GitHub上。
五、将本地博客同步到GitHub上
(1)编辑自己创建的本地博客文件夹中的_config.yml中的deploy节点(这是我的,换成自己的就行)
deploy:
type: git
repository: https://github.com/EricCJJ/EricCJJ.github.io.git
branch: master
注意:hexo配置文件中任何位置的“:”后面都需要带一个空格,不然会报错。
(2)安装插件
sudo npm install hexo-deployer-git --save
(3)最后执行下面命令
hexo clean
hexo generate
hexo deploy
在浏览器输入https://username.github.io就可以访问你的博客了。
六、后记
Hexo也有很多好看的主题,这里就给大家自己摸索吧,可以参考这个,希望对大家有帮助。
MAC下搭建Hexo博客的更多相关文章
- MAC下搭建个人博客
安装homebrew ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/inst ...
- 史上最详细“截图”搭建Hexo博客并部署到Github
http://jingyan.baidu.com/article/d8072ac47aca0fec95cefd2d.html 大家也搭建过博客,很多时候,按着教程来做就可以了,但是我当时为了搭建Hex ...
- 史上最详细“截图”搭建Hexo博客——For Windows
http://angelen.me/2015/01/23/2015-01-23-%E5%8F%B2%E4%B8%8A%E6%9C%80%E8%AF%A6%E7%BB%86%E2%80%9C%E6%88 ...
- 树莓派搭建 Hexo 博客(一)
Hexo 一个开源的博客框架,本文记录了一下在树莓派上搭建 Hexo 博客的过程. 什么是 Hexo? Hexo 是一个快速.简洁且高效的博客框架.Hexo 使用 Markdown(或其他渲染引擎)解 ...
- 在vps上搭建hexo博客
最近更换了服务器,需要把自己的Hexo Next重新部署到新服务器上,本文记录一下在vps上搭建hexo博客的过程. 在vps上搭建hexo博客需要下面这些工具: Nginx: 用于博客展示 SSH: ...
- 利用Serverless应用搭建Hexo博客
本文将介绍如何使用火爆的Serverless应用,15分钟快速搭建Hexo博客.以腾讯云提供的Serverless应用–云开发为例: 步骤1:安装 CloudBase CLI 以及本地部署 Hexo ...
- Mac下搭建hexo
Mac下搭建hexo 并部署到gitcafe 1.安装brewhome ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homeb ...
- 阿里云VPS搭建Hexo博客
最近买了一个阿里云服务器,准备写自己的网站,和将自己的作品放在上面:开始的时候,感觉就一个服务器应该很简单,但是从申请域名到备案,再到服务器搭建,没想到一波三折:闲话不多说,只是记录我在搭建时,最简单 ...
- 树莓派搭建 Hexo 博客(二)
Hexo 一个开源的博客框架,本文记录了一下在树莓派上搭建 Hexo 博客的过程. 上一篇介绍了 Hexo 的配置,现在网站已经能在本地访问了,也能通过 hexo generate 命令生成静态界面 ...
随机推荐
- 【转】MySQL双主一致性架构优化
[原文]https://www.toutiao.com/i6594414914838725133/ 一.双主保证高可用 MySQL数据库集群常使用一主多从,主从同步,读写分离的方式来扩充数据库的读性能 ...
- CVE-2013-2551
目录 小白的CVE-2013-2551 分析 & 利用 0xFF 前言 0x00 环境和工具 0x01 分析POC POC 调试 0x02 利用 构造R3任意内存读写 劫持eip 利用利用 0 ...
- VS网站开发的发布部署的不同情况说明
VS网站开发有两种模式: 1.网站模式 2.应用模式 其中,网站模式的发布,要考虑勾选“使用固定命名和单页程序集” 如下图 网站模式: 新建网站的网站模式 新建网站的网站模式第二步 应 ...
- X-Pack权限控制之给Kibana加上登录控制以及index_not_found_exception问题解决
无法查看索引下的日志问题解决 好事多磨,我们还是无法在Kibana下看到数据,究竟是怎么一回事呢? 笔者再次查看了logstash的控制台,又发现了如下错误: logstash outputs ela ...
- PyQt5 的几个核心模块作用
QtCore 包含了核心的非GUI功能.此模块用于处理时间.文件和目录.各种数据类型.流.URL.MIME类型.线程或进程. QtGui 包含类窗口系统集成.事件处理.二维图形.基本成像.字体和文 ...
- 加载驱动三种execute
executeQuery executeUpdate executeQueryBatch
- 【正则表达式】用js实现千位分隔符,怎么实现?
(?=pattern) 正向预查,在任何匹配 pattern 的字符串开始处匹配查找字符串.这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用.例如,'Windows (?=95|98|NT| ...
- MP实战系列(十八)之XML文件热加载
你还在为每次修改XML文件中的SQL重新启动服务器或者是等待几分钟而烦恼吗? 配置了热加载即可解决你的这个问题. 这就是XML文件热加载的目的,减少等待时间成本,提高开发效率. SSM框架配置(Spr ...
- MP实战系列(十五)之执行分析插件
SQL 执行分析拦截器[ 目前只支持 MYSQL-5.6.3 以上版本 ],作用是分析 处理 DELETE UPDATE 语句, 防止小白或者恶意 delete update 全表操作! 这里我引用M ...
- STL 1–迭代器std::begin()和std::end()使用
迭代器是一个行为类似于指针的模板类对象.只需要迭代器iter指向一个有效对象,就可以通过使用*iter解引用的方式来获取一个对象的引用.通常会使用一对迭代器来定义一段元素,可以是任意支持迭代器对象的元 ...