0基础开发 zzuwlan 自动认证脚本的总结

应该是巨坑,超长且啰嗦

为什么要有这个东西

先来看看认证界面是什么样的:
认证界面
看起来多么简单粗暴,完美秉承了 simple is the best 的原则(口胡不下去了
反正就是每次都要打个验证码还要点点点真 TM 烦,作为一个程序员怎么能每天干这么机械的活!
说搞就搞,先去买本犀牛书看….(卒

开发思路

首先通过 chrome 的网络分析工具,我们得知首先你请求任意一个地址,zzuwlan 都会将你劫持到认证的页面去,代码大概是长这样的:
认证劫持
然后就是上图那样的认证界面,输入用户名密码和验证码点击认证就 OK 了,看起来是不是非常简单?
确实也不难,但是为了防止你用脚本完成这个过程(我猜的),他们设置了一些坑。
首先确定脚本的思路,我们需要使用tampermonkey来运行自定义脚本,这个东西是干嘛的我就不啰嗦了。
脚本一开始的思路是:随便 get 一个 http 的网址(因为 https 的网址会卡在证书验证上),然后拿到认证地址,访问,填充用户名和密码,验证码我们选择直接手撸 ocr 验证,然后后面提交就是了。
当然,既然是一开始。。。就证明我踩坑了。

Read More

Mac下如何通过isatap隧道使用郑大IPV6

嗯。。。如果你是Windows想使用isatap隧道,请参考这篇文章

为什么要有这个东西

傻*我校并没有DHCP的ipv6能用(起码2017年02月26日21:19:15之前不通),不过还好我校提供了isatap隧道接入。。。
然而你百度出来的教程99%都是Windows下的用法,mac下的用法目前来看除了tuna的大佬们写了个之外,别的并搜不到什么。。。
嘛毕竟这玩意在国内也就那么几个学校有。。。可以理解

如何使用

笔者目前使用的是Mac OS 10.11.6,不过我觉得这玩意应该在10.12也可以用。。。
脚本如下:

1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/sh
#清除IPV6路由表
route delete -inet6 default
ifconfig gif0 destroy
#取本地的ip地址,网卡名不一样的自己看着改
IP=`ifconfig en1 | grep "inet "| awk '{print $2}'`
#下面的isatap隧道地址写死了,如果你是别的学校的可以自己改那个222.22.32.161...(应该都看得懂
#再啰嗦一句 ipv6头可以在Windows下获取一次然后得出。。。前面是固定的,后面是你的内网IP地址- -
sudo ifconfig gif0 create
sudo ifconfig gif0 tunnel $IP 222.22.32.161
sudo ipconfig set gif0 MANUAL-V6 2001:da8:5000:40f:0:5efe:$IP 64
sudo route add -inet6 ::/0 -interface gif0

注意事项:
此脚本需要执行权限,sudo chmod +x isatap.sh(应该都看得懂

资料参考

清华大学 IPv6 ISATAP 配置说明
PS:其实Windows下面那个脚本也可以更新了。。。不过懒癌发作凑合用吧。。。
Linux的脚本直接参考TUNA给的。。。改改就能用
PPS:大清的脚本是有坑的。。。改了好久

Mac下配置基于http认证的git环境

为什么要有这个东西

hostker是一家非常好的。。。额云计算服务商(他们自己说的),但是一直以来有个有点蛋疼的问题。。。
他们家的应用虽然基于git,但是不支持ssh。。。
然后每次commit都要敲一遍账号密码。。。虽然不是很费事但是总归不是个办法
然后今天xjb搞的时候发现了个东西。。。叫.netrc
大概看了看,可以解决每次都输入账号密码来认证的蛋疼局面- -
我一定不是最后一个知道的!

怎么用


vim ~/.netrc


machine git-ct.smartgslb.com(这里可以替换成别的git地址)
login example@example.com(你的邮箱) password pwd(你的密码)

ok大功告成。。。是不是非常简单无脑然而我敲了两年岂可修

总结

多上网长见识。。。

一次镜像站配置问题的解决

问题

在使用debian7更新的时候,发现自己负责的校园镜像站在强制 https 之后居然不能用了,提示是这样的:

gnutls_handshake() warning: The server name sent was not recognized

WTF???明明 USTC就毫无问题,为啥换到我校的就不行了?

debug

一开始我以为是服务端问题,然后各种谷歌也没结果,最后找到了神秀师傅一番请教之后,排除了服务端的问题…(顺便一提我随手配的SSL在ssllab评分居然都是A,科科)
那问题看来是服务端的了,然后神秀一番操作之后告诉我好像这个域名的SNI有点问题耶
然后丢给我一个链接

解决方案

所以就是在apache的 ssl.conf 里加一行

ServerName www.你的域名.com

即可.
妈的好智障的问题啊…而且并不是所有系统都会触发,神秀用的ubuntu16.04就可以强行无视这个错误更新…

君の名は。

在经历了盗版流出,某组及时做了翻译但是被喷成狗然后大家撕逼大战这么一堆心累的破事之后,这个片子终于是被光线影业确认引进了.
然后我自然就去看了…归功于你B的福,我还拿了一张第二天的票可以二刷一下.
感谢二刷,我看到了很多第一遍看不到的细节.
然后懒癌发作,这文也鸽了一星期,然后我去三刷了…上映一周之后,人明显少了很多,观影气氛还是挺不错的.除了有个傻逼男一直在BB剧情

首先还是谈一谈我对这片子本身的看法吧.
首先,作画无敌.一刷的时候看到开头那个OP我差一点以为是60帧.然后二刷的时候留意了一下,只有OP里三叶在地上坐着那处是一拍一(我能看出来的),别的应该都是正常的一拍三.然而,即使不是60帧(确认是24帧),即使不是4K(存疑)确认2K,安藤雅司的这个作画也是神级.毕竟说起新海诚,大家的印象应该都是一致的,暖色调,光影,细腻到浪费经费的背景,这些都是安藤这个天才作监的功劳.可以这么说,你名的作画应该代表了2016年底之前,日本手绘动画的巅峰.

然后说说人设吧.实际上人设也有安藤这个天才的参与,但是主要还是田中将贺这老怪物搞的.他的人设其实并不算特别的令人印象深刻,但是这种富有三次元特征的二次元人设还是挺合大众胃口的,毕竟对这个片子来说,重要的是受众广,而不是像Q娃一样粉丝向.

然后剧情.其实看了三遍之后,这个剧情已经很清晰了,没有别的作品那么烧脑.作为一部和时间有关的作品,本片的时间线毫无疑问是很乱的,但是如果你是一个注重细节的人,那么本片除了中后期的时间线稍微乱了一点不容易立刻反应过来,其他时间还是非常好认的.

严重剧透注意

本来这里写了一堆剧情简介,但是我发现这玩意毫无意义,删了

8年后的泷已经成为准社畜,三叶比他大三岁自然早就是社畜(应该吧),然后这两个人在电车上错过了一次.
没错,电车,男女主,错过.
这才是新海诚片子的一般尿性,第一遍看到这里我已经准备好刀片了.
然后镜头一切就冬天了,男主走过一座桥,和撑伞的女主擦肩而过.
看到这里,我觉得好多人已经要忍不住了…
还好新海诚这次想明白了,卖座和理想只能选一个,于是男主女主在一个楼梯前相遇了.
这片子我个人最泪点的地方,不是女主孤身一人,花掉了自己一年零花钱跑去东京见男主;也不是女主在跑去说服她父亲的路上跌倒,然后看到手心里男主写的”すきだ”;而是最后,男主和女主在两列电车上互相抬头,然后都跑下车去找对方,最后在那个神社前,两人擦肩而过那一瞬.
男主回头了,女主也回头了.
这就足够让看过秒五的人飙泪了.
即使忘却了名字,但是能再次相遇,真是太好了呢.

针对 hostker 的 HSTS 设置 v2

本来不想写太多的,但是我被坑了之后感觉还是要改一下的
首先,我们要明确一件事: HSTS 是什么
Wikipedia 是这么写的:

HSTS的作用是强制客户端(如浏览器)使用HTTPS与服务器创建连接。服务器开启HSTS的方法是,当客户端通过HTTPS发出请求时,在服务器返回的超文本传输协议响应头中包含Strict-Transport-Security字段。非加密传输时设置的HSTS字段无效。

所以我们现在就知道了,要实现 HSTS ,你必须有一个 header 去告诉浏览器.
我的 .htaccess 文件是这样写的:

1
2
3
4
5
6
7
8
9
10
11
12
13
#针对 hostker 的 HSTS 设置
RewriteEngine On
RewriteCond %{HTTP:KERSSL} !on
<If "%{HTTP:KERSSL} == 'on'">
# Header Set
Header always set Strict-Transport-Security "max-age=86400"
</If>
RewriteRule (.*) https://blog.dangge.moe%{REQUEST_URI} [R=301,L]
#貌似是 hexo 要求的
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]

max-age 的值我设置的比较小,主要是怕设置太长,万一网站迁移的时候浏览器崩了… –出处
貌似是有点水。。。然而懒的写字
希望能帮助到谁。

一份 nginx.conf 备份

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
server {
# Port that the web server will listen on.
listen 80;
# Host that will serve this project.
server_name 一般填域名;
# The location of our projects public directory.
root /home/www/这里一般填域名;
# Point index to the Laravel front controller.
index index.php;
location / {
# URLs to attempt, including pretty ones.
try_files $uri $uri/ /index.php?$query_string;
}
# Remove trailing slash to please routing system.
if (!-d $request_filename) {
rewrite ^/(.+)/$ /$1 permanent;
}
# PHP FPM configuration.
location ~* \.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_split_path_info ^(.+\.php)(.*)$;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
# We don't need .ht files with nginx.
location ~ /\.ht {
deny all;
}
# Set header expirations on per-project basis
location ~* \.(?:ico|css|js|jpe?g|JPG|png|svg|woff)$ {
expires 365d;
}
}

VPS 下载 Google Drive 片源

自用记录

0.你得有个 Linux 服务器
0.1.去github地址下载你对应系统的二进制包
0.2.装好它
0.3.第一次使用需要 Oauth2 授权,不多说
1.把别人发布的片源转存到自己的 Google Drive直接用文件 id 就行,我蠢
2.获取分享链接,拿到文件 id
3.drive download -i <文件id>
4.python -m SimpleHTTPServer
5.下载,over