有些时候,需要使用非智能设备去连接Tsinghua WiFi。

可能没法打开net.tsinghua.edu.cn/usereg.tsinghua.edu.cn去认证,没法获取到设备的IP地址,甚至一些设备只有在通过这个WiFi能够连接网络的时候才会使用这个WiFi(比如Switch)。

这时如何连接Tsinghua呢?

首先通过一些方法获得设备的mac地址,xx:xx:…:xx:xx这样的形式,一般在系统信息能看到;或者使用自建的WiFi看一下连接设备的mac地址。

消除网络学堂红色的0。

示例效果:

Chrome下载插件tampermonkey,这是一个可以在匹配页面跑js脚本的插件。

然后新建插件,写下面内容,启用插件:

把Isso评论魔改成了github登录发表only 233333。

用requests和flask手撸了个OAuth2验证。

具体魔改的内容可以看https://github.com/zrt/isso-OAuth2 2333。


可以在下面试试23333。

这篇文章讨论如何过度优化静态博客的加载速度。

闲的无聊,于是思考,怎样才能让zrt.io/blog加载的更快呢?

这个blog是由hexo生成,所以可以看作纯静态的一堆html。

script defer

最简单的技巧是把script标签都放到body底部,这样script加载的过程就不会阻塞页面渲染。

进阶的方法是使用script标签的async属性,能够让script标签异步加载。

但是异步加载的标签并不能保证执行顺序,比如有一个script是jquery,一个是jquery.fancybox,后面的依赖前面的,async就有可能出错,这时可以考虑用defer属性,这个属性可以让标签在页面渲染完后依次加载。

HTTP/2 PUSH

由于用的Apache2服务器配置好了HTTP/2,而HTTP/2又有Server Push这个功能,可以尝试主动推送静态文件。

一般HTTP/1.1的情况下,发现script或css需要从src加载时,这时就会又发起一个请求去下载该静态资源,然后进行页面加载,这样会和服务器通信好几个来回,在延迟较高的情况下会导致网页加载较慢。

HTTP/2的Server Push是服务器在一次请求的返回信息里不仅返回请求的页面,还返回许多其他的静态资源,相当于告诉浏览器先收着这些你会需要这些资源的。

配置好了http2,通过curl -v –http2发现并没有走h2,在/var/log/大概报个这样的warning:

1
[http2:warn] AH10034: The mpm module (prefork.c) is not supported by mod_http2. The mpm determines how things are processed in your server. HTTP/2 has more demands in this regard and the currently selected mpm will just not do. This is an advisory warning. Your server will continue to work, but the HTTP/2 protocol will be inactive.

大概是mpm的prefork模式和http2不兼容。Google到修补方法:修改mpm模式为event。
参考https://http2.pro/doc/Apache#prefork-http2