美文网首页Nice编程java
使用hexo+github免费搭建个人博客网站超详细教程

使用hexo+github免费搭建个人博客网站超详细教程

作者: 八怪不姓丑 | 来源:发表于2017-01-18 16:07 被阅读3636次

    很多人都想搭建自己的博客,但是奈何技术有限,服务器部署,HTML,域名解析,等等,这一大堆东西可真有的折腾。

    但是如果有这样一个机会,不需要太复杂的操作,不要服务器,不要域名,不用写html,你愿意去尝试吗?

    可以先看一下我自己的http://wapchief.com
    背景图有点大,3M多,可能加载比较慢,但是一进去能看到默认的有个背景,然后是默认背景慢慢被覆盖的情况。
    当时也是费了半天功夫才搭建好,在这篇文章中会详细介绍整个流程,尽量避免入坑吧,但要是真是你自己给自己挖坑那就没办法了。

    搭建的时候也是看着别人的教程一点点跟进,但是都有缺陷。
    比如分支的创建,和私人域名的解析,有这方面的教程但是都不是太完善,有些只是教你搭建但是后期没有考虑换电脑,换环境的情况。包括后期维护等等。

    这是我github上的源码,为了便于理解。本文相关部分也会结合源码进行讲解。有不清楚的地方欢迎提问,尽我能力给大家解决(毕竟我不是专业的)。
    https://github.com/wapchief/wapchief.github.io

    优点
    1、不需要服务器,github免费提供的托管服务
    2、不需要域名,github同样提供了一个.io的域名
    3、不用自己写xml、hexo提供了很多开源的博客模板。
    4、便于维护更新,换风格直接换模板就行。

    进入正题###

    • 安装相关工具#####

    1、安装Node.js
    https://nodejs.org/dist/v7.4.0/node-v7.4.0-x86.msi
    https://nodejs.org/dist/v7.4.0/node-v7.4.0-x64.msi
    选择需要的版本下载,分别是32位和64位。下载后安装一直默认下一步就行。
    2、安装Git
    Git-2.11.0.3-32-bit.exe
    Git-2.11.0.3-64-bit.exe
    打开cmd命令行(win+r 输入cmd回车)分别执行

    node -v
    npm -v
    git --version
    

    会得到相对应的版本信息(如图)

    wapchief.com
    如果都可以成功运行出现版本信息证明安装成功。
    这里写过一篇介绍git的文章,如果安装遇到问题可以去查看:
    《必须要会的Git基本使用及常用命令操作》
    3、安装Hexo
    必须按照步骤来,因为hexo需要使用node.js的npm命令。
    打开cmd命令行(win+r 输入cmd回车)分别执行
    npm install hexo-cli -g
    

    等待自动安装完成后。输入

    hexo -v
    

    检查是否安装成功
    到这一步如果所有都安装成功,并测试无问题,那么本地配置已经搞定,下面开始在github上建项目了。

    • 在github上创建并设置远程库

    注册登录略过,不会的请自行百度。
    登录后点击“+”号,选择New repository,下一步
    在Repository name下面填写你要创建的地址,这个地址是就是你的域名,以github.io结尾。
    例如填写wapchief.github.io以后就在地址栏直接输入wapchief.github.io就可以访问网站
    按照提示一步步完成创建。
    创建之后,点击setting设置远程库:
    找到GitHub Pages点击change theme选个主题select theme设置模板
    等待github pages创建完成,然后输入你创建的地址测试github pager是否创建成功。此时页面是空的没有任何东西。

    wapchief.com
    下面要做的就是使用hexo模板将源码放到github。
    • 初始化Hexo

    创建一个文件夹用于存放hexo。然后右键该文件夹使用

    git bash here
    

    命令就可以直接定位到当前目录。


    wapchief.com

    然后使用把github上的项目克隆下来

    git clone https://github.com/wapchief/wapchief.github.io.git
    

    接着使用cd定位到克隆下来的目录

    cd wapchief.github.io
    

    然后开始安装相关工具

     npm install hexo --save
    

    初始化hexo基础配置文件。初始化时间比较长,不用急,等完成后输入

    hexo init
    

    初始化hexo。这个命令和git 仓库命令相似。意思一样都是初始化。
    接着输入

    npm install
    

    配置node。然后输入

    hexo g
    

    加载hexo基础html、css、js等文件。
    在这完成后等于已经在本地创建了一个网页,想查看的话,输入

    hexo s
    

    然后相当于开启了一个本地的服务器,会提示你拷贝url到浏览器。
    (如图)

    wapchief.com 在浏览器输入 http://localhost:4000/
    会看到这样的页面,证明本地hexo默认模板配置成功,
    wapchief.com
    到这一步如果将hexo放到github page,那么使用github.io访问的将是一个默认的页面。下面我们要把他diy成自己的博客,包括导入模板主题等。
    • 安装主题

    关于主题大多都是以压缩包形式,可以去github上搜hexo theme,会出来很多,里面都有介绍。

    hexo-theme主题 比如我们要用第一个。
    可以通过两种方法,这里我直接使用git命令完成,具体请参考next官方文档:http://theme-next.iissnan.com/getting-started.html
    继续在我们的本地hexo目录输入
    git clone https://github.com/iissnan/hexo-theme-next themes/next
    

    等待下载完成。如果出现失败的提示,有可能是网络环境不好。重试即可。
    ok,下载完主题后我们打开文件夹,找到themes文件夹,发现里面多了个
    next


    这个就是我们下载下来下来的主题文件。
    接下来我们回到hexo根目录下用记事本打开_config.yml文件。


    把landscape修改成next就行了。
    我们再运行
    hexo s
    

    打开浏览器地址栏输http://localhost:4000/

    现在是我们修改主题后的页面。
    • 修改内容

    内容较多建议参考官方文档
    https://hexo.io/zh-cn/docs/configuration.html
    修改完之后,可以重新执行hexo s在浏览器查看效果。并确认无误,包括以后需要添加文章,或者更新主题等,都建议先在本地查看无误再远程部署。
    根_config.yml文件中

    # Site
    title: 网站标题
    subtitle: 副标题
    description: 个人签名
    author: 姓名
    language: zh-Hans
    timezone:
    

    这里有几个坑需要注意一下:

    1、所有的配置“:”符号后面都要带空格,否则执行本地测试直接失败。
    2、language是设置语言。zh-Hans是中文。
    3、如果设置zh-Hans后仍出现乱码问题。需要更改文件的字符编码集为UTF-8,方法很多具体,就不详细介绍了。

    _注意同时要在,根config.yml中配置自己的远程仓库地址

    # Deployment
    ## Docs: https://hexo.io/docs/deployment.html
    deploy:
      type: git
      repo: https://github.com/wapchief/wapchief.github.io.git
      branch: master
    

    这一步很关键,不要漏了。

    • 提交项目,部署

    继续在本目录命令行
    安装部署工具(方便以后更新)
    npm install hexo-deployer-git --save
    1、初始化本地仓库:
    git init
    2、连接远程仓库:
    如果是第一次使用git,在使用git的时候会提示输入用户名和密码,用户名是自己的注册邮箱。
    git remote add origin https://github.com/wapchief/wapchief.github.io.git
    3、发布hexo到github page
    hexo clean && hexo g && hexo d
    4、添加文件到本地仓库
    git add
    5、提交声明
    git commit -m '内容'
    6、推送到远程仓库(github)
    git push origin
    这里建议创建一个新的分支hexo,用于管理hexo文件。提交的的时候只提交hexo网站html、css、等源文件。而默认的master用来部署更新项目,具体可以看我的github地址分支情况https://github.com/wapchief/wapchief.github.io
    创建并切换到新建分支:
    git checkout -b hexo
    将分支推送到远程仓库:
    git push origin hexo
    这时打开网站就能看到效果了。

    记得提交以后去github上把hexo分支设置默认,以后写文章等都要部署。
    文章在hexo目录下的\source_posts文件夹中,是md格式,也就是Markdown格式。
    以后可以用以下命令部署。也就是第三步

    //等于一次性执行了,清空、刷新、部署三个命令
    hexo clean && hexo g && hexo d
    

    如果部署时不clean,可能之前修改的文章还存在。包括一些配置等,有时候部署完成后并没有改变,其实是缓存未清除。

    • 进阶-绑定域名

    域名可以自行去阿里云,景安等网站购买。一般都有系统提示步骤。
    拿到域名之后,进行解析,推荐使用dnspod免费解析。
    具体使用方法:
    1、注册登录dnspod之后,添加域名,然后解析,添加两条记录



    2、登录你注册域名网站的管理后台,修改DNS解析地址为
    f1g1ns1.dnspod.net
    f1g1ns2.dnspod.net
    

    3、登录github,找到项目,设置setting,找到GitHub Pages



    4、在master分支下的CNAME.MD文件写入注册的域名


    再次访问差不多就好了,如果延迟的话,可能解析立马不会生效。需要等会儿才能看到。


    自己创建博客已经有些日子了,现在朋友想搭建博客,正好自己接触过,也整理一下,以后方便查看。所有的流程都在这里。
    对于有git、nodeJs基础的人来说搭建起来可能也就是十几分钟的事,但是对于没接触过的就要费很大工夫。如果遇到问题欢迎留言。


    跳坑指南:
    使用hexo+github搭建个人博客遇到过哪些坑

    相关文章

      网友评论

      • 4933e11d16fb:根据博主的例子,我也完成了博客的搭建。
        https://alili.tech
        前端大爆炸 Web BANG BANG BANG
        感谢博主。
      • 倚栏听风_cb0e:我hexo -s 后 输入https://link.jianshu.com/?t=http://localhost:4000/这个页面找不到 改端口号也不行
        wuli_decade:那个配置node能不能详细点?在hexo -s前面那里
        八怪不姓丑:本地配置有误吧
      • Datacruiser:切换为hexo 分支以后需要在配置文件里面将deploy:
        type: git
        repo: https://github.com/datacruiser/datacruiser.github.io.git
        branch: master

        里面的master也改成hexo吗?
        八怪不姓丑:@Datacruiser 这个不需要改
      • HachiLin:为什么hexo init 显示报错呢?hexo init出现run hexo init on an empty folder。。。
        Viaphlyn:@HachiLin 我也出现这个问题,请问是怎么解决的,我hexo有安装成功呀
        HachiLin:@八怪不姓丑 现在已经解决了,谢谢楼主
        八怪不姓丑: @HachiLin http://www.jianshu.com/p/59e8d170346d
        使用命令行hexo -v检查hexo安装成功没
      • 5ab321517ea0:这里建议创建一个新的分支hexo,用于管理hexo文件。提交的的时候只提交hexo网站html、css、等源文件。而默认的master用来部署更新项目,具体可以看我的github地址分支情况https://github.com/wapchief/wapchief.github.io
        创建并切换到新建分支:
        git checkout -b hexo
        将分支推送到远程仓库:
        git push origin hexo
        这时打开网站就能看到效果了。

        作者:八怪不姓丑
        链接:http://www.jianshu.com/p/a39573555039
        來源:简书
        著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

        作者能把这里写得详尽点吗,比如以后该怎么提交,代码和方式等等。
        自己每次都是用hexo clean && hexo g && hexo d 来提交的 ,hexo 分支。。没用上。。
        花开_陈凤娟:为什么我用hexo clean && hexo g && hexo d部署完后,master分支下没有js文件夹,访问以后全报错?
        八怪不姓丑:@分队队长 绑定的域名是部署后生成在master分支下的CNAME文件。而master分支下的所有文件是执行三个部署命令自动生成的。如果不更换电脑或者不打算远程管理就不需要新建分支。写过一篇相关问题的解决方案你可以先参考http://www.jianshu.com/p/59e8d170346d
        5ab321517ea0:以至于 绑定了域名后,每次提交,从域名进都会打不开博客。

        要自己重新去设置CNAME.MD这个文件,这就麻烦了
      • ae17d0264ad4:your old repository,s clone URL 填什么呢?
        八怪不姓丑: @Huimble 远程仓库地址
      • 酒鬼丶:不错
        八怪不姓丑:@超人徐 :smile:
      • d6e9cf48fc08:我下的是另外一个主题,怎么我打开_config.yml文件没有theme后的那个东西,怎么办😱
        八怪不姓丑: @AIOIO 不是,看你下载后的主题文件夹叫啥名
        d6e9cf48fc08: @八怪不姓丑 哦,对,改成next我也成功了,但是改我那个不行,你看它的主题名字叫LouisBarranqueiro/hexo-theme-tranquilpeak,那它不就是在原要改next的那里改成tranquilpeak?
        八怪不姓丑:@AIOIO 有两个_config文件,一个是在根目录,一个是在主题目录,别搞错了
      • gznbl:下载的主题没有next文件夹,怎么破?
        八怪不姓丑: @JS_tony next就是主题文件,系统默认的是landscape.next可以去github搜,也可以去hexo网站找别的主题。
        gznbl:@八怪不姓丑 主题里面不是有两个文件夹,一个是默认的landscape还有一个 next,我这边git clone之后没有那个next。。。:joy:
        八怪不姓丑: @JS_tony next是主题吧,不是文件夹
      • iworthy:一会试验一下、
      • d6e9cf48fc08:支持,收下了

      本文标题:使用hexo+github免费搭建个人博客网站超详细教程

      本文链接:https://www.haomeiwen.com/subject/ruwvbttx.html