hexo网站的搭建实践与经验感触分享

做个人博客网站,从我粗鄙的见识认为,有三类,一类是不懂技术的小白,使用wordpress,当然我虽然是搞技术的,在很长一段时间我长期使用wordpress,因为它非常简单容易上手,傻瓜式的操作,而且内容也非常容易管理,第二类呢是使用hexo、hugo等工具自己在服务器上进行复杂的配置然后才能搭建,我呢现在属于这类,第三类呢,是在第二类的基础上,能够自己开发网站的样式,这个需要比较深厚的前端技术,你需要懂js、html、css等很多知识,还需要很多实践才能做。

​ 我觉得每个写个人博客的作者都是孤独的,特别是刚开始写的时候,明明没有人关注,却要一个人默默的写东西,你期待着与很多人对话,但是当时一个人都没有,一种孤独的,难以持续坚持的感觉油然而生。

​ 做个人博客网站,从我粗鄙的见识认为,有三类,一类是不懂技术的小白,使用wordpress,当然我虽然是搞技术的,在很长一段时间我长期使用wordpress,因为它非常简单容易上手,傻瓜式的操作,而且内容也非常容易管理,第二类呢是使用hexo、hugo等工具自己在服务器上进行复杂的配置然后才能搭建,我呢现在属于这类,第三类呢,是在第二类的基础上,能够自己开发网站的样式,这个需要比较深厚的前端技术,你需要懂js、html、css等很多知识,还需要很多实践才能做。

​ 当然上面的分类是不靠谱的,只是我脑瓜子随便一想得出的一个初步分类。我以后肯定是要制作专属自己的皮肤的,用来表达自己的个性(装逼)

​ 就不再唠嗑了,开始装逼了,哈哈哈

缘起

请看这几个博客,都是我精心挑选的

  1. ahonn

我的感触是,感叹这个作者写样式这么简洁大方,感叹这个网站响应速度这么快,第一个感叹是我以后要做的,第二个感叹是因为和我以前做的网站不一样,比我以前做的wordpress站点都快,后来我想到,主要有两个原因:

  1. 服务器响应速度快。我之前使用过最快的云主机尊云,这家网站速度还可以,其实国内的阿里云、腾讯云都不错,只是昨天,也就是2017/04/01,愚人节的这一天,腾讯活动给了一个月的免费主机,ping速度还不错,然后我的这个网站就选用这家了。
  2. ahomn这个网站使用的是我们今天要介绍的hexo,它是一个静态网站生成器,也可以当一个服务器来运行,所以这个网站其实就是一些静态页面,我猜想是用nginx配置了服务器,请求这个网站只是返回一些静态网页而已,那自然是非常快的。

hexo

hexo目前来说是我接触最好用的博客建站网站了,不需要配置数据库,灵活的配置项,可以把你写的文章和你用的样式进行杂交,生成对应样式的文章等,当然你也可以自己开发样式,自己做其他的修改。

hexo之前用过几次,每次都是浅尝辄止,未得它的真正使用方式,我感觉很多个人博客都没有把这点说透,那是什么东西要说透呢,看下面的列表

  1. 你云服务器上放的东西应该是一个纯粹的静态网站,而不是用命令hexo server -p 80生成的hexo服务器

  2. 你的云服务器上应该是用其他服务器比如nginx,tomcat,appache,jetty等运行的一个环境,你只要把你的静态网站放在对应的网站路径就好

  3. hexo怎么写文章?你以为是像wordpress那样有个管理网站给你吗?不是,hexo它完全是一种纯命令行形式的工具,你需要用专业的文字编辑工具去写,这里推荐大家使用Typora(我也是今天才真正投入使用,真正认为它是神器),是我最好用的markdown神器

    我的神器有如下几个,我都分享给你们

    1. Java最佳开发神器,idea
    2. 写前端最佳开发神器,webstorm
    3. 写markdown的最佳神器,Typora,这个要重点介绍下,下了好久了这个,但是一直没用起来,我以为没有实施预览,今天要写文章再次拿来使用,发现他的编辑与预览是同时产生的,这个真是牛啊,体验超级棒👍,这样的话,markdown语法也是很快就学会了,以后就不怕写不了牛逼哄哄的markdown了(以前看到大牛写的markdown那真是一个羡慕啊,无法言语啊)
    4. UML/ER图/代码生成神器,Visual Paradigm,这个网上没有破解,我只好痛心买了注册码,$349,好心疼,有按月付费的,但是我觉得我以后长期用,长痛不如短痛就买了
    5. API文档编写与生成代码神器 Swagger,这绝壁是神器,能让你快速开发你的服务,同时写好文档和测试,太牛逼了这个,现在也是特别火
    6. 思维导图软件 Freemind,这个是免费的,从我大学就开始用了,但是当时没有领略到它加上快捷键之后是如此的简单便捷,我深深的爱上了这款软件
  4. hexo文章怎么发布呢,使用命令hexo deploy,但是你需要配置你博客目录下的一个文件_config.yml,并配置下你要发布你本地网站上的文章到指定的服务器(发布前用命令hexo generate生成静态网站,在目录public下),怎么配置?这个分不同的服务器。

    我测试过git和我自己的云服务器rsync(找到你的deploy位置)

    git配置:

    deploy:

    ​ type: git

    ​ repo: https://github.com/cmlanche/cmlanche.github.io.git

    ​ branch: master

    ​ message: “hello guys”

    rsync

    deploy:

    ​ type: rsync

    ​ host: 123.207.x.x(这里隐藏我的服务器ip,免得被很多人拿来测试了)

    ​ user: root

    ​ root: /root

    ​ port: 22

    ​ delete: true

    ​ verbose: true

    ​ ignore_error: false

    这种方式的话后边会要求你输入服务器密码的

    测试发现不能同时又两个deploy,这是我比较缺憾的,比较不满意的地方。

  5. 你写的文章怎么到你的云服务器或者github上了呢?再次重复下,你写文章,先发布(怎么发布?你只要把你写的markdown文件移动或者复制到你的博客根目录下的/source/_posts/目录下即可,注意标题格式)到你的本地环境的hexo上,并用hexo generate生成静态完整,再配置好_config.yml中的deploy选项,使用命令hexo deploy完成发布,这个过程看似繁琐,其实作为一个资深技术人来说,这是你应该做的,没必要用什么图形工具,那太low了,对不对?

总结

  1. 发现我对工具往往浅尝辄止,类似的事情发生太多,就上面说的freemindtyporahexo,没有深入去实践,当初都给他们定下不好用的标签,实际上你错了
  2. 既然这样一套成熟的开发方式已经摸熟了,以后就要坚持写博客,把我认为最有价值的内容带给大家,期待大家的关注

关注我