How to make hexo-browsersync working by solving hexo-server rendering incomplete page
Contents
What is hexo-server and hexo-browsersync?
- hexo-server 可以让你实时在本地预览你的hexo博客, 而不必编译整个网站, 对于编写博文和调试hexo本身的插件主题是很有用的
- hexo-browsersync 只有hexo-server的话,每次改完都得手动刷新一下浏览器, 这很不科学. browsersync 可以自动在你保存文件的时候自动化地刷新浏览器
What is the problem?
实时预览/自动刷新, 这些都很普通. 所以我的期望也很普通, 装上能用就行. 奇怪的是, 有时候写着写着, 它突然间就不灵光了!
更神奇的是, 有时候删除掉一些文本后, 它又突然能 work 了. 追踪问题的过程太琐碎就不细说了, 总的来讲, 这玩意返回的 Content-Length
是错的, 比实际内容短,
导致浏览器将后面(也可能服务器也根本不输出了?)的内容被丢弃. 看了 hexo-server 的 github ,竟然没人提这个 issue? 好吧,若不是用的人少,那即是我太啰嗦写文太长了.
How to solve
当然, 关键还是怎么解这个问题. 我在 hexo/hexo-server 这几个 repos 翻了半天, 竟然都没有发现有 Content-Length
的设定.
有点神奇, 就在万般无奈的情况下, 看到 hexo-server 的 config 里面有一项叫做 compress . 一般服务器对内容压缩都会使用流
式压缩, 即不会使用 Content-Length
预设页面的长度. 经过测试, 确实可以解决代码被截断的问题:
在 _config.yml
加入:
|
|
Author Klesh Wong
LastMod 2018-11-21