肇鑫的日常博客

日常

以前的固话是家里停电也能用的

看老片《刑警队长》。因为剧集换过地址,字幕很少。有段剧情是,刑警队长家里停电了,他老婆用固话给他打电话问电本放哪里了。结果看到一条弹幕,说这剧情也太假了,家里没电了还能打电话。

我还想,这位是没用过固话吧。固话的电是电话线里的,和家里的电不是同一个线路啊。

结果这时又飘过来一个弹幕,说其实固话里是有电池的。后面又来一个,说以前的电话是停电也可以打的。

我产生了两个想法:

  1. 后面说的那两种固话我都没用过。现在的固话没电了就不能用,那防灾的效果是不是会差很多?
  2. 年轻人经常觉得父辈在有些事情上不如自己,从而产生一些评价负面的想法。但是其实,只是因为他们累计了好多经验,现在已经过时了。这些经验虽然并非完全无用,但是也成为了新学习的阻碍。年轻人觉得自己懂得多,无非是自己见识少,学习阻碍小罢了。

《刑警队长》说是老片,但是其实也不是特别老。因为这个片是2018年的飞天奖的现实题材优秀电视剧大奖之一。但剧集审批号是2015年的。而讲述的内容从1995年开始。

水星路由D268G评测

家里的网件R8000(固件版本:1.0.4.46)最近遇到了两个问题:

  1. 荣耀手机可以连无线,但是无法上网。
  2. 小米扫地机对应的米家应用提示上传速度过低地图无法刷新。之后升级固件就总是失败。

最终是通过连接第二个路由开启2.4G解决的。但是两个路由总觉得累赘。刚好赶上双十一,就打算换个路由。

R8000是wave1的路由,不支持MU-MIMO,于是特意选了支持MU-MIMO,并且有4根天线的水星D268G。

信号和网速

D268G的设置很简单,默认是2.4G与5G频段合二为一,IPV6关闭。连我的iMac 5K信号要比R8000好。

D268G 正常

对比一下R8000。

R8000 日常

从面板数据上,两者的差距还挺大的。不过局域网复制文件的时候,二者的峰值差不多,都是70MB/s。D268G的均值更高(差不多高20MB/s),也更稳定。我本来是要将其留下的。

稳定性

但是D268G实在太不稳定了。用一段时间,5G就会连不上,使用Mac的工具查看,噪音居然和路由发出的信号一样大。重启路由会恢复正常,但是几个小时之后又会这样。

D268G 故障

我尝试修改配置解决这个问题,修改过的配置包括:

  1. 开启与关闭IPV6
  2. 分离与融合2.4G和5G的热点
  3. 延长DHCP保持时间
  4. 设为静态IP
  5. 修改热点频段,从自动改为手动
  6. 打开与关闭MU-MIMO
  7. 改变天线方向
  8. 请求水星客服在线帮助
  9. 联系京东更换路由

以上方法都试过,还是没能解决这个问题。所以最终只好退货。

我的猜想

关于5G的稳定性,我猜想有三种可能:

  1. 当前固件存在故障,长时间运行会不稳定。
  2. MTK方案与苹果设备存在兼容问题。在拆解评测里,作者有提到为削减成本,水星采用的是单独定制的精简之后的5G芯片。
  3. 5G芯片过热导致的。同样是上面的拆解评测,有提到只有2.4G芯片有散热片,5G的没有。而这两颗芯片其实是相同型号的。

结尾

最终我退掉了这款路由,不过它的信号和网速还是很不错的。可以看到wave2的路由对于上一代wave1,存在巨大的优势。当然,也可能是它的天线比R8000的更长的缘故。

目前我降级了R8000的固件到旧版,解决了上面提到的问题。不过降级固件不是长久之计,我还在寻觅更合适的路由。

为MWeb添加推特卡片的支持

当我们分享链接到推特时,如果链接对应的网站支持推特卡片。推特就会生成相应的卡片,效果如下图,这比单纯的文字加链接的效果要好很多。

twitter_card_summary_larget_image

特别提示:本文是对于MWeb的深度定制,建议你看完全文之后,再决定是否动手。

新建一个网站

强烈建议你新建一个网站用来练手。右键MWeb的库,选择新建分类,然后选择做为站点,选择一个主题(我们以octopress主题为例),然后点右侧的编辑,选择“复制当前主题到新主题”。这样做的好处是,你对于主题的修改,都是在复制后的主题进行的,一旦出现问题,删掉这个主题就可以了,不会影响到已有的主题。

copy_theme_to_modify

自定义扩展

双击进入主题的文件夹,你会看到一个叫extensions的文件夹。双击进入这个文件夹。里面一般会有一个或者两个文件,分别叫site.jsondocument.json。这两个文件对应了MWeb设置中的站点扩展和文档扩展。

extension_preferences

虽然也可以在MWeb中直接添加站点扩展和分享扩展。但是那个添加的方式MWeb应该是做错了。添加的内容成了全局的,一旦添加,所有的站点就都有了,而不是指定的站点才有。
直接编辑这两个文件,生成的扩展,是只针对当前主题对应的站点的,不会引起混乱。

站点扩展

用文本编辑器打开site.json。复制下面的内容,插入到文件的第二行。

{
    "title":"twitter:site",
    "variableName":"twitter:site",
    "inputFieldHeight":22,
    "exampleText":"@owenzhao"
},
{
    "title":"twitter:creator",
    "variableName":"twitter:creator",
    "inputFieldHeight":22,
    "exampleText":"@owenzhao"
},
{
    "title":"og:image",
    "variableName":"og:image",
    "inputFieldHeight":50,
    "exampleText":"图片路径或地址"
},

文档扩展

打开document.json文件。(如果不存在,可以复制一份site.json,然后改名为document.json,删除掉第一行左中括号和最后一行又中括行中间的内容。)复制下面的内容,插入到文件的第二行。

{
    "title":"og:description",
    "variableName":"og:description",
    "inputFieldHeight":240,
    "exampleText":"文章摘要"
}

如果原本document.json中就有内容,上面代码最后的}之后需要加一个英文的逗号。

为了方便 ,我将og:image属性放在了站点扩展,这样只需指定一张图片,就可以一直使用了。
如果你想要每个文章都单独指定一张图片,可以将og:image那一段大括号的内容,从站点扩展,移动到文档扩展。
一旦og:image放在了文档扩展,你就必须每个文件都单独指定一张图片。不然,生成网站的时候就会遇到错误。

填写内容

打开MWeb,添加必要的属性。

站点扩展

fill_site_extensions

  • twitter:site,是你站点对应的推特,如果没有,就填成你自己的。
  • twitter:creator,是作者,也就是你自己的推特。
  • og:image,是卡片的题图。需要把它放在主题的asset/img/下。建议图片大小不要小于1600x900。
    • 如果你的是在文档中指定的,那就是是media/开头的地址。

注意:站点扩展,每个站点都需要单独设置。

文档扩展

打开你要修改的文章,点开最右侧的ℹ️标志,粘贴一段文字,或者编写文档摘要到og:description文本框即可。

修改模版

之后就是修改模板了。一个MWeb生成的模版,大致可以分成headbodyfooter三部分。

  • head对应,主题中的header.html文件。
  • body,根据性质的不同,分别对应主题中的post.htmlpage.htmlcategory.htmlarchives.html文件。
  • footer就对应footer.html

根据推特的要求,它的信息,必须写在html文件的head的meta中,这个是在模版的header.html中。这里,我们遇到了一个较大的困难。我们的一部分内容,是只有在post.html才可以得到。header.html无法取到相应的数据。

我的解决方案是修改header.html文件,将/head及之后的内容移动到对应body的部分,即需要移动内容到post.htmlpage.htmlcategory.htmlarchives.html文件中。

注意:如果你使用的是其他的主题,可能对应body的不是我写的这几个文件,有可能是别的文件,或者甚至更多。但修改的原理是相同的。

删减head.html

用文本编辑器打开head.html。剪切</header>以及以后的内容,我这里对应的是第42行开始。

修改其他模版文件

将剪切的内容粘贴到post.htmlpage.htmlcategory.htmlarchives.html文件的顶部。

插入推特信息

将下面的代码,插入到post.htmlpage.html的顶部。另外两个文件不必插入。

<!--Twitter Meta-->
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:site" content="{{ext_twitter:site}}" />
<meta name="twitter:creator" content="{{ext_twitter:creator}}" />
<meta name="twitter:title" content="{{post.title}}" />
<meta property="og:url" content="{{siteURL}}{{post.url}}" />
<meta property="og:title" content="{{pageTitle}}" />
<meta property="og:description" content="{{post.ext_og:description}}" />
<meta property="og:image" content="{{siteURL}}{{ext_og:image}}" />

完成

保存所有文件,在MWeb中的站点,选择清空并重新生成网站,然后同步网站到你的服务器就可以了。

以后,你只要分享任意该网站的文章链接到推特,就可以同步生成推特卡片了。

参考资料