最近写博客时发现,用hexo s本地调试时,博客显示都很正常,但hexo d部署到github之后,文章和目录都是空白,但链接可点击。最后排查原因,找解决方案,最终还是解决了。这里就分享一下。
用hexo d部署后的结果如下图:
域名地址没问题,多次刷新也是同样的界面,并且能访问github,证明不是网速的问题。直接看的话可能是某些css文件和js文件加载失败了。那就chrome浏览器F12查看一下吧。结果如下图:
大量的404,而且仔细观察,基本上都是vendors文件夹下的内容。
好吧,既然我的博客出问题了,其它人应该也碰到过类似问题,就带着这些线索搜索吧。最后,找到了原因:最近github page进行了更新,过滤掉了source/vendors目录的访问,导致该目录下的文件在加载时都是404错误。
那么解决方案呢?
我这边采取了github next issue的解决方案,即修改路径,将原来的vendors都改成lib。修改的主要内容如下:
- next主题的
_config.yml文件:修改_config.yml文件中的_internal: vendors为_internal: lib - vendors文件夹:修改
themes\next\source\vendors为themes\next\source\lib themes\next\.bowerrc文件:修改.bowerrc文件中的vendors为libthemes\next\.gitignore文件:修改.gitignore文件中的vendors为libthemes\next\.javascript_ignore文件:修改.javascript_ignore文件中的vendors为libthemes\next\bower.json文件:修改bower.json文件中的vendors为lib
所有这些修改完成之后,再次hexo g生成文件。hexo d部署。再次刷新页面,发现一切都正常了。