Hexo 安装

  1. 首先下载安装Node ,我这里安装的是12.22版本
  2. 然后安装 hexo。npm install -g hexo-cli -g指全局安装
  3. 创建初始化目录 hexo init blog 这里会在当前路径下创建一个blog文件夹,同时初始化hexo配置
    项目初始图
  4. 执行npm install安装依赖
  5. 安装git依赖,之后会用到npm install hexo-deployer-git --save
    否则会报异常 ERROR Deployer not found: git
  6. 执行hexo s命令测试项目是否成功,hexo s表示在本地运行服务。界面如下,表示成功运行hexo。
    hexo默认自带两篇文章,这时可以看见
    run

测试部署

hexo s用来本地测试,端口是4000,可以用来调试主题等
hexo g用来生成静态文件,位于Public目录下, 若是自行部署则部署此pubilc文件夹就可以了
hexo d部署,运行这个命令直接就部署在了github上,github的配置见后文

注意:使用了github插件的话不用将代码推送至github,hexo d就是直接会把静态文件推送至github配置的分支上

github 配置

本地证书

  1. 查看本地是否已有SSHKEY
    查看当前用户目录下是否有.ssh文件ls -la ~/.ssh ,刚开始是没有id_rsaid_rsa.pub
    江南一点雨
  2. 生成ssh指纹、
    ssh-keygen -t rsa -b 4096 -C "你的邮箱地址"
  3. 添加ssh到ssh-agent中
    eval "$(ssh-agent -s)"
  4. 查看是否已有id_rsaid_rsa.pubid_rsa.pub为公钥后续会使用
    cat ~/.ssh/id_rsa.pub

github 仓库搭建

新建一个仓库,仓库名为自己的{账号名}.github.io,必须为自己的账号名,否则访问不了。
如 我的账户名为LiuKewenSC,那么我只能创建liukewensc.github.io的仓库,如下图:

仓库

配置SSH_Key

在右上角个人头像处单机进入菜单,选择settings,点击SSH and GPG keys,点击Add new SSH Key
title随便填,keytype默认 AuthenticationKey,Key填写上面证书的公钥,确定提交。
ssh-key

Hexo 配置github

_config.yml文件下,找到deploy配置项,配置git,如下,配置github的仓库地址

1
2
3
4
deploy:
type: git
repo: git@github.com:{username}/{username}.github.io.git
branch: master

图片如下:
git

这里使用了git插件,因此前面才必须要安装hexo-deployer-git

部署执行清除,生成文件,部署三个动作

1
2
3
hexo clean
hexo g
hexo d

也可以一次执行hexo clean && hexo g && hexo d

代码和文件同时保存在一起

如果想将代码也保存在一起,则需要:

  • 配置两个分支,master分支提交代码,新建一个分支专门上传静态文件
  • 在github仓库的设置中,选择Pages,然后将其中你的Branch改为静态文件分支
    branch
  • 在工程_config.ymldeploy中修改上传分支为静态文件分支,然后执行部署

也可以参考官方部署方式

配置自定义域名

默认的域名可以直接使用了,但是只能以https协议访问,项目中如果有http协议的图片则显示不了,因此需要配置自己的域名

  1. 域名从几大运营商购买即可,然后配置CNAME指向github域名
  2. 项目的source文件夹下新建文件CNAME文件,里面填写自己的域名
  3. 重新部署到github服务器上
  4. 过一会儿访问即可
  5. 若还是无法访问,再试试修改github仓库的Pages配置,修改Custom domain为自己的域名地址,同时这里可以修改https协议
    a

问题

  1. 部署好了之后无法访问md中的图片
    因为默认的github是https协议,若md中的图片地址是http协议,则无法访问
    解决办法是配置自定义域名,这样才可以修改成http协议(github默认的域名访问不支持http,需要修改了才可以设置http)