Github 搭建 Hexo 纯静态化个人博客平台

以前一直想搭建一个属于自己的博客平台,有余种种原因一直未能实现,最近闲来无事,参照网上的教程,搭建了属于自己的博客。自己的博客网站,样式自由,不需要受限于各大平台。

本篇为从零开始的基础篇,本篇所包含的内容如下:

  1. 安装Git
  2. 安装NodeJs
  3. 安装hexo
  4. 生成SSH并添加到github
  5. 部署项目
  6. 上传到github
  7. 绑定个人域名
  8. 修改及配置主题
  9. 添加RSS
  10. 添加评论
  11. 写文章部分

开始

由于本人的电脑在搭建博客之前就有了各种环境,但是对于没有任何基础的人来讲,我觉得还是从源头开始讲会好一点,就像教别人做菜,总得把所有的用料及步骤说清楚对吧?(大佬们可以自动忽略啊啊啊啊~)

1. 安装Git Bash

我一直不太喜欢在cmd中操作各种命令,所以挑了这个比较好使的Git Bash, 我的是windows环境,所以下载windows版本并安装就可以了。

  • 下载地址
  • 安装步骤:双击下载好的exe文件,一路next就好啦
  • 安装好后,打开gitbash,查看版本:然后你就可以在这里发挥你的聪明才智了
    • 命令:git version (写这篇博客的时候最新版本:2.12.2)

2. 安装NodeJs

Hexo是基于nodeJS环境的静态博客,里面的npm工具很有用啊,所以还是老老实实把这玩意儿装了吧

  • 下载地址(说明:LTS为长期支持版,Current为当前最新版)
  • 安装步骤:反正下载好msi文件后,双击打开安装,也是一路next,不过在Custom Setup这一步记得选 Add to PATH ,这样你就不用自己去配置电脑上环境变量了,装完在按 win + r 快捷键调出运行,然后输入cmd确定,在cmd中输入path可以看到你的node是否配置在里面(环境变量),没有的话你就自由发挥吧。
  • 查看版本:又到自由发挥的时候了
    • 命令:node -v

3. 安装hexo

看到这么多安装,千万不要紧张,小哥哥小姐姐们一定要稳住,别怕,因为后面的东西都是在gitbash中用npm工具安装就好了。

  • 先创建一个文件夹(用来存放所有blog的东西),然后cd到该文件夹下。
  • 安装hexo命令:npm i -g hexo
  • 安装完成后,查看版本:

  • 初始化命令:hexo init ,初始化完成之后打开所在的文件夹可以看到以下文件:

  • 解释一下:
    • node_modules:是依赖包
    • public:存放的是生成的页面
    • scaffolds:命令生成文章等的模板
    • source:用命令创建的各种文章
    • themes:主题
    • _config.yml:整个博客的配置
    • db.json:source解析所得到的
    • package.json:项目所需模块项目的配置信息
  • 做好这些前置工作之后接下来的就是各种配配配置了。

4. 搭桥到github

  • 没账号的创建账号,有账号的看下面。

    1. 创建一个repo,名称为yourname.github.io, 其中yourname是你的github名称,按照这个规则创建才有用哦,如下:


    1. 回到gitbash中,配置github账户信息(YourName和YourEail都替换成你自己的):


    1. 创建SSH

      在gitbash中输入:ssh-keygen
      -t rsa -C "[email protected]
      ,生成ssh。然后按下图的方式找到id_rsa.pub文件的内容。

    1. 将上面获取的ssh放到github中:


    添加一个 New
    SSH key
     ,title随便取,key就填刚刚那一段。

    1. 在gitbash中验证是否添加成功:ssh
      -T [email protected]thub.com
    2. 完成下一步你就成功啦!

5. 一步之遥

  • 用编辑器打开你的blog项目,修改_config.yml文件的一些配置(冒号之后都是有一个半角空格的):
deploy:
  type: git
  repo: https://github.com/YourgithubName/YourgithubName.github.io.git
  branch: master
  • 回到gitbash中,进入你的blog目录,分别执行以下命令:

    hexo clean
    hexo generate
    hexo server

    注:hexo 3.0把服务器独立成个别模块,需要单独安装:npm i hexo-server

  • 打开浏览器输入:http://localhost:4000

  • 接着你就可以遇见天使的微笑了~

6. 上传到github

  • 先安装一波:npm install hexo-deployer-git --save(这样才能将你写好的文章部署到github服务器上并让别人浏览到)
  • 执行命令(建议每次都按照如下步骤部署):
    hexo clean
    hexo generate
    hexo deploy

    注意deploy的过程中要输入你的username及passward。如下:

  • 在浏览器中输入http://yourgithubname.github.io就可以看到你的个人博客啦,是不是很兴奋!
  • 感觉gitbash中东西太多的时候输入clear命令清空。

7. 绑定个人域名

  • 不想绑定的自行忽略
  • 第一步购买域名:随便在哪个网站买一个就好了,小花是在阿里云购买的visugar.com, DNS也是顺道在那买的。
  • 第二步添加CNAME:在项目的source文件夹下新建一个名为CNAME的文件,在里面添加你购买的域名,比如我添加的是visugar.com,只能添加一个哦。
  • 到DNS中添加一条记录:

    其中ip地址为你的github的地址,可在cmd中ping一下就能看到(ping
    yourname.github.io
    ):

  • 接着再次部署一下,用你购买的域名打开,就可以看到你的博客啦~

8. 修改及配置主题

  • hexo初始化之后默认的主题是landscape ,
    然后你可以去这个地址里面找到你想要的主题。在github中搜索你要的主题名称,里面都会有该主题的如何使用的介绍,按着来就好了,反正就是改改改!我选的是hueman,看起来挺不错,至少是我喜欢的类型。

  • 跟该主题相关的配置在themes/hueman/_config.yml里面,然后根据你的需要在这配配配就行了。

  • 有的东西我也不知道是啥玩意儿,你要多试多倒腾几次,就能意会啦
  • 下面是针对我所选的主题的两小点(别的主题我没看,可能也是类似):

    在导航栏添加点东西

    • 例如我添加了一个更新日志的模块。
    • 在主题的配置文件中,menu添加一栏:Board:
      /board
    • 然后在source中添加一个board,即对应上面的名字。然后再创建一个index.md,里面可以写你想写的内容。
    • 在主题的hueman/langulages/zh-CN.yml中的index适当的位置加:board:
      ‘更新日志‘
      ,位置和名字是你自己设定。
    • 重新部署,然后就OK了

    在侧边栏添加点东西

    • 回到你的主题的配置文件中,找到widgets一栏,在你要添加的位置处添加一条你自定义的名称。例如我的叫communiation且放在了第二行。
    • 在上面所提到的zh-CN.yml文件中找到sidebar一栏,添加communiation:
      ‘你要设的名称‘
    • hueman/layout/widget中添加一个communiation.ejs,填入模板
      <% if (site.posts.length) { %>
      <div class="widget-wrap widget-list">
          <h3 class="widget-title"><%= __(‘sidebar.communiation‘) %></h3>
          <div class="widget">
              <!--这里添加你要写的内容-->
          </div>
      </div>
      <% } %>

9. 添加RSS

  • 先安装rss相关插件:npm i hexo-generator-feed
  • 在你的项目的_config.yml配置文件下找到Extensions添加如下内容:
    # Extensions  #插件和主题
    ## Plugins: https://hexo.io/plugins/
    ## Themes: https://hexo.io/themes/
    #RSS订阅
    plugin:
    - hexo-generator-feed
    #Feed Atom
    feed:
      type: atom
      path: atom.xml
      limit: 20
  • 进入到你的主题的配置文件下,找到你的放rss的位置,添加/atom.xml即可。
  • 重新部署再打开就能看到效果啦~

10、加入站点内容搜索功能

本站点使用的是Local Search。加入站点内容搜索功能步骤如下:

  • 安装hexo-generator-searchdb

1

$ npm install hexo-generator-searchdb --save

注意:安装时应在站点根目录下,即myBlog目录下

  • 添加search字段

在站点myBlog/_config.yml中添加search字段,如下:


1

2

3

4

5


search:

path: search.xml

field: post

format: html

limit: 10000

效果如下:

11、加入数据统计与分析功能

本站点使用的是百度统计。加入数据统计与分析功能步骤如下:

  • 注册站长账号并登陆

这里注册站长账号,并填写信息,网站域名和网站首页以下图为例来填写,注册完成后并登陆。

  • 在跳转的页面中会显示下图,复制hm.js后的id值

  • 添加baidu_analytics字段

在站点myBlog/_config.yml中添加search字段,值为上步复制的id值

至此,该功能已成功加入,大约过20min后在百度统计上可以看到站点的访问情况,如下图:

  

原文地址:https://www.cnblogs.com/SkyMark/p/9093083.html

时间: 2024-11-02 04:25:52

Github 搭建 Hexo 纯静态化个人博客平台的相关文章

PHP 页面静态化/纯静态化/伪静态化

概念 PHP静态化分为:纯静态化 和 伪静态化:纯静态化又分为:局部静态化 和 完全静态化 纯静态化:是把PHP生成的动态页面保存成静态的html文件,用户访问该静态页面,而不是用户每一次访问都重新生成一张相同的网页,优点就是减小服务器开销, 局部静态化:是生成的静态文件中,有局部的数据还是通过ajax技术动态获取的: 完全静态化:即不存在动态获取数据的情况,所以内容都来自静态的html页面 伪静态化:其实还是动态访问,其实质是动态生成数据,你访问的网址类似于"http://yourhost,c

zblog2.3的缺点:纯静态化无法实现栏目名加id的网址结构[图]

写博客应半年了,因为对程序语言比较感兴趣,因此也关注博客系统的发展,对于国内博主来说,ZBLOG似乎是最佳的选择,功能比较完善,也比较好修改模板,当然,你还需要写CSS代码,模板里面基本都用标签完成的,这基本就是模块儿化设计了,确实比较方便.去年我开始建自己的博客时,zblog-asp程序还只是2.2版本,静态化中心的功能并不好用,尤其是纯静态化的网址非常不美好,这对于我们这种有强迫症的人非常不舒服,因此选择了采用插件完成纯静态化功能,生成纯静态的html网页,虽然要麻烦一点,但是也没有办法,这

小蚂蚁学习页面静态化(2)——更新生成纯静态化页面的三种方式

更新生成纯静态化页面的三种方式:1.按照时间间隔更新.2.手动更新.3.定时更新(需要系统配合). 1. 按照时间间隔更新. 当用户第一次访问这个页面的时候,程序自动判断,该静态文件是否存在,并且该文件是否还在有效时间内,如果该文件未超出了有效时间,用户访问的是已经生成的静态文件.如果超出了有效时间,用户得到的是动态输出的内容,同时重新生成静态文件.稍微修改一下昨天的代码为例: <?php //首先判断是否有静态文件,并且文件的最新修改时间到现在是否大于20秒 if(is_file('./tex

求索作文网采用ZBLOG-PHP系统目前唯有纯静态化插件不满意[图]

我的新站上线了,用的是PHP的系统,对于ZBLOG,我已经用了好多年了,但是PHP其实我是最近才开始用,因为以前数据量比较少嘛.目前对纯静态化插件不是很满意,因为纯静态化插件的栏目和标签更新机制不理想,我希望首页.栏目.标签页面,更新了文章之后,不自动刷新,而是当我需要更新这些列表页面的时候,手动去点击更新,而且我希望还有更新首页.栏目.标签页面前多少页的功能.比如我需要更新首页的前两页,那么我输入页码2,点击更新,就更新了首页的前两个页面.同样的,我需要更新栏目或者标签的前两个页面,就选择需要

Docker学习总结(6)——通过 Docker 化一个博客网站来开启我们的 Docker 之旅

通过 Docker 化一个博客网站来开启我们的 Docker 之旅 这篇文章包含 Docker 的基本概念,以及如何通过创建一个定制的 Dockerfile 来 Docker 化Dockerize一个应用. Docker 是一个过去两年来从某个 idea 中孕育而生的有趣技术,公司组织们用它在世界上每个角落来部署应用.在今天的文章中,我将讲述如何通过"Docker 化Dockerize"一个现有的应用,来开始我们的 Docker 之旅.这里提到的应用指的就是这个博客! 什么是 Dock

使用github+sublime+markdwon 写文章,写博客并发布到博客园

第一步:安装 轻松玩转github: 注册成为 github用户 首先下载github windows 客户端: 安装完成后打开gitShell 窗口,这里客户端在安装的时候就已经帮你把用户名密码设置好了,并且把公钥上传到了github.无需配置直接使用即可: ps: 使用 git config --global -l 可以查看. 学习一下git的常用命令吧:这里强烈推荐廖雪峰老师的博客,我不会告诉你我就是跟着他学的. 然如果你觉得廖老师太多了懒得看,而且只写写博客什么的就直接看下文吧,下面会给

基于Node.js的ghost开源博客平台

Ghost 是一套基于Node.js 构建的开源博客平台(Open source blogging platform),具有易用的书写界面和体验. 1.安装node windows 下安装npm:http://blog.csdn.net/yczz/article/details/6938260 第一步: 下载node.js的windows版当前最新版本是http://nodejs.org/dist/v0.5.10/node.exe 第二步:设置环境变量把node.exe所在目录加入到PATH环境

liyuyu.cn-呵呵小鱼的个人博客平台

博客地址:liyuyu.cn 博客平台:WordPress 4.0.0 主机托管:万网X3型虚拟主机 1.关于域名:域名当时注册是个人姓名域名,价格非常便宜(20元/年) 2.关于博客平台:WordPress是非常流行的博客发布平台,特别适合我这种小菜鸟,神马PHP神马MySQL,我不懂唉~ 3.关于主机的选择:首先想到肯定是那些免费的虚拟主机,试用过后发现速度不是很稳定,再加上域名还没有备案,最终放弃了免费的主机.后来在万网管理域名的时候,发现一个入门级的虚拟主机推荐,X3型虚拟主机,88元/

WordPress---PHP语言开发的博客平台

WordPress是一种使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站.也可以把 WordPress当作一个内容管理系统(CMS)来使用.WordPress是一个免费的开源项目,在GNU通用公共许可证下授权发布.目前最新版本为2014 年4月25日WordPress 3.9 版.WordPress被认为是Michel Valdrighi所开发的网志平台b2/cafelog的正式继承者."WordPress"这个名字出自Christine