概要
趁着还没忘干净,首先先说一下,创建github上的代码仓库开始,到现在的安装过程和遇到的各种坑。
代码上传不到github
像我上一篇讲到的那个,下载好hexo和nodejs后没有配置相应的ssh公钥,所以init初始化的时候用的是我以前的配置文件(以前在电脑上搞过github),所以配置文件不对导致上传不上去,最后配置好ssh文件并保存到自己github上之后再初始化就可以上传静态page了。
用hexo g命令报错
我用的是NexT.Mist主题,照着Next主题配置网站 配置主题后发现加载主题报错,然后就开始纠结了。
出错提示:
FATAL (unknown path) [Line 7, Column 23]
Error: Unable to call `the return value of (posts["first"])["updated"]["toISOString"]`, which is undefined or falsey
Template render error: (unknown path) [Line 7, Column 23]
Error: Unable to call `the return value of (posts["first"])["updated"]["toISOString"]`, which is undefined or falsey
at Object.exports.prettifyError (E:\test\blog\node_modules\nunjucks\src\lib.js:34:15)
at E:\test\blog\node_modules\nunjucks\src\environment.js:486:31
at new_cls.root [as rootRenderFunc] (eval at _compile (E:\test\blog\node_modules\nunjucks\src\environment.js:565:24), <anonymous>:161:3)
at new_cls.render (E:\test\blog\node_modules\nunjucks\src\environment.js:479:15)
at Hexo.module.exports (E:\test\blog\node_modules\hexo-generator-feed\lib\generator.js:28:22)
由于刚开始是习惯性的从后边往前找错误,看见这个发现没见过这个错误,就开始各种baidu、google搞了一会,发现网上的方法都不行呢,然后就回来重新从头看错误,就发现刚开始开头的这个错误:
TypeError: Cannot read property 'offset' of null
at Object.exports.timezone (E:\test\blog\node_modules\hexo\lib\plugins\processor\common.js:44:40)
at E:\test\blog\node_modules\hexo\lib\plugins\processor\post.js:83:42
at tryCatcher (E:\test\blog\node_modules\bluebird\js\release\util.js:16:23)
at Promise._settlePromiseFromHandler (E:\test\blog\node_modules\bluebird\js\release\promise.js:507:35)
at Promise._settlePromise (E:\test\blog\node_modules\bluebird\js\release\promise.js:567:18)
……
去检查配置的时候发现了由于我刚刚在进行主题配置的时候顺手就把站点配置里边的时区配置给改了。原来是这个样子timezone: Asia/Shanghai我给顺手改成了timezone: Asia/Beijing话说咱们不是东八区吗。:-D 改回上海就好了!
配置域名
我的域名是在狗爹上买的。首先去github上配置CNAME,也就是设置里的Custom domain如下图:
然后在网上找了下资料,发现需要得到github的ip地址(由于我的github用户名是:yigeor,所以在本机ping yigeor.github.io得到域名),然后配置到域名解析里边。
然后。。。然后访问zhaoyunkang.com访问不到,访问yigeor.github.io也不行了,有句mmp讲了N遍。试过用CNAME配置@和www直接指向yigeor.github.io不行,用A直配置@和www指向yigeor.github.io不行,用CNAME和A直接指向ip也不行,直接在域管理里边转到yigeor.github.io还是不行。最后折腾来折腾去,发现还是域名解析的问题。狗爹的默认域名服务器是国外的,然后我弄了个代理,设置全局模式,发现可以解析了(配置:A配置的@和www直接指向ip)。。
这个不设置代理就访问不到有点坑了,然后就改了域名服务器,改到了DNSPOD上,域名服务器配置如下:
域名服务器
a.dnspod.com
b.dnspod.com
c.dnspod.com

评论插件
刚开始用的是多说,然后发现多说上面问题挺多的,我自己就发现好多次评论插件加载不出来。后来用的是DISQUS,但是这个对于不会搭梯子的人也还有个很大的缺陷,就是在国内好多地方被墙了。。。
但是我还是选择了这个。可以邮件提醒有人评论了自己的什么文章,多说应该也行。最后,还是用多说吧 (⊙﹏⊙)b
搜索功能
试了一下Swiftype最后发现自带的搜索Local Search也挺给力的,果断换之。
统计
百度统计和谷歌统计都加了,百度统计好加,谷歌统计就有点尴尬了,这是官网配置截图:
我复制的时候是从UA-后边复制的,格式是XXXXXXXX-X,发现好像根本就不能统计到,然后再试XXXXXXXX,还是不行,搞的都想放弃谷歌统计了,突然想到把UA加上,最后把UA加在前边,格式为UA-XXXXXXXX-X。然后就好了,哈哈 可能还是我自己理解能力有问题。【认真脸】
问题
还有个问题暂时还没找见解决办法。。。谁告诉我这个图标怎么换:
补充
上边这个问题解决了,偶然看见配置文件里的一行代码,制作一个文件favicon.ico就好了,配置如下:
# Put your favicon.ico into `hexo-site/source/` directory.
favicon: /favicon.ico
暂时能想到的就是这些,如果有什么不对的地方,欢迎大家相互交流,相互学习!!
欢迎转载,转载请注明出处,谢谢!
本文链接:http://zhaoyunkang.com/2017/03/03/hexo-pit/