今日份插件排除

本来写文章就是想图个轻松愉快,打开编辑器速度要够快,结果某天wordpress插件更新之后,打开文章编辑器的时间都足够拉泡屎了。属实不行,打开Chrome的F12看看,发现一个从fast.wistia.com加载的E开头的js一直卡住,导致编辑界面一直白屏。

2020年了,还有block住渲染的js,我真的服啦!

但是只发现了犯罪分子,没有找到幕后主使,解决不了问题。后来的一段时间主要还是靠防火墙把wistia给屏蔽了,凑合着用。

今天认真看看到底是哪个扑街搞的这么多屁事,参考了一下wp support上一个老哥的问题,安装了Query Monitor插件,然后把wistia从黑名单里放出来,等加载完之后打开monitor一看,发现居然是smush这个插件产生的请求。狗日的,一万年不用一次的图片大小优化插件,在这里给我作妖?二话不说直接关掉插件。

世界清静了。

Read More

将LAMP的MySQL改成官网Binary版|Centos 7(新坑)

起因是想装gogs,但是一直报错,查github发现MySQL版本要至少5.7.7。用lnmp一键包升级脚本无法成功升级,而且从source编译实在太费劲,所以选择用官方Binary来装。

备份数据库

假设是有数据库root权限,那么用mysqldump来备份:

1
mysqldump -uroot -p --all-databases > database-bak.sql

将备份文件通过SFTP或者移到一个安全的地方,以供稍后恢复使用。

添加MySQL二进制源

首先将原来的/etc/my.cnf改名为my.cnf.bak,因为更新之后直接用这个配置文件会无法启动mysqld。

根据MySQL的官方文档,有以下步骤:

添加二进制源

首先要在https://dev.mysql.com/downloads/repo/yum/下载rpm格式的源,比如CentOS 7就是RHEL 7的社区版,所以下载这个:

Read More

文章部分内容加密

默认的公开程度是影响整篇文章的,从JKooll那里抄了个方法来加密段落。

首先在主题的functions.php里面加上一个function:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
:::php
//Usage: [secret key="密码"]加密内容[/secret]
function e_secret($atts, $content=null) {
extract(shortcode_atts(array('key' => null, 'tip' => null), $atts));
if (
isset($_SESSION[hash('md5', $key)]) ||
(isset($_POST['e_secret_key']) && $_POST['e_secret_key'] == $key)
) {
$_SESSION[hash('md5', $key)] = $key;
return '<div class="e-secret">' . $content . '</div>';
} else {
if (isset($_POST['e_secret_key'])) {
$tip = '<p class="secret_tip">密码输入错误!</p>' . $tip;
}
return '<form class="e-secret" action="'.get_permalink().'" method="post" name="e-secret"><label>输入密码查看加密内容:</label><input type="password" name="e_secret_key" class="euc-y-i" maxlength="50"><input type="submit" class="euc-y-s" value="确定">
<div class="euc-clear"></div></form>' . '<p class="secret_tip">' . $tip . '</p>';
}
}
add_shortcode('secret', 'e_secret');

用法就是,如果在新式编辑器里,要添加一个html区块,然后这样把内容包起来:

1
[secret key="密码" tip="我是提示信息"]加密内容[/secret]

最后添加css样式优化一下外观:

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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
.e-secret {
margin: 20px 0;
padding: 20px;
background: #f8f8f8;
}
.e-secret input.euc-y-i[type="password"] {
float: left;
background: #fff;
width: 100%;
line-height: 36px;
margin-top: 5px;
border-radius: 3px;
}
.e-secret input.euc-y-s[type="submit"] {
float: right;
margin-top: -47px;
width: 30%;
margin-right: 1px;
border-radius: 0 3px 3px 0;
}
input.euc-y-s[type="submit"]{
background-color:#3498db;
color:#fff;
font-size:21px;
box-shadow:none;
-webkit-transition: .4s;
-moz-transition: .4s;
-o-transition: .4s;
transition:.4s;
-webkit-backface-visibility:hidden;
position:relative;
cursor:pointer;
padding: 13px 20px;
text-align: center;
border-radius: 50px;
-webkit-box-shadow: none;
-moz-box-shadow: none;
box-shadow: none;
border: 0;
height: auto;
outline: medium;
line-height: 20px;
margin: 0;
}
input.euc-y-s[type="submit"]:hover{
background-color:#5dade2;
}
input.euc-y-i[type="text"],input.euc-y-i[type="password"]{
border:1px solid #F2EFEF;
color:#777;
display:block;
background: #FCFCFC;
font-size:18px;
transition:all .5s ease 0;
outline:0;
box-sizing:border-box;
-webkit-border-radius:25px;
-moz-border-radius:25px;
border-radius:25px;
padding:5px 16px;
margin: 0;
height: auto;
line-height: 30px;
}
input.euc-y-i[type="text"]:hover,input.euc-y-i[type="password"]:hover{
border:1px solid #56b4ef;
box-shadow:0 0 4px #56b4ef;
}

p.secret_tip {
clear: both;
}

Read More

Firefox国际版

Firefox有国际版和国内版之分。之前被国内版恶心过一回,用它无法登陆国际版的同步账号。所以掌握正确的下载国际版的姿势是非常必要的。

下载最新版(latest)

根据官方ftplatest目录的README.txt,最新版的链接是有套路的。例子是:

https://download.mozilla.org/?product=firefox-latest&os=win&lang=en-US

os=win代表下载的是windows 32位的安装包;lang=en-US意思是语言是美国英语。

那么要下载64位的简体中文版firefox,链接自然就是:

https://download.mozilla.org/?product=firefox-latest&os=win64&lang=zh-CN

具体的OS和LANG的解释可以自己去看README.txt。

下载特定版本

官方ftp,每个版本都有单独的目录,找到要的版本下载就是了。连远古版本0.8都有

Read More

“西门子 贝库茨”是谁

今天看知乎关于恐怖组织的一个回答的时候,看见提到了德国的一个恐怖组织“红军派(RAF)”曾经刺杀过西门子的总裁“贝库茨”,处于警惕,决定去查一下:1. 西门子是不是真的有这个总裁;2. 如果有,他是不是真的死在红军派手下。

可能是答主的文章写得太好,上网一搜全都是他的回答:

即使是404搜索引擎也是一样的结果。所以可信度再次降低了——这么多回答都没有这个人的生平信息出现,这真的不是人造人?

既然中文搜不到,就需要用英文来试试。西门子的英文很容易,Siemens。贝库茨是个德国人,德文就比较难搞了。如果直接搜索“贝库茨”,会出来一堆垃圾信息,但是:

然后去404引擎查一查“Siemens Beckurts”,终于找到了人:

生平里面写了:

"

Karl Heinz Beckurts (born 16 May 1930 in Rheydt; murdered 9 July 1986 in Straßlach near Munich) was a German physicist and research manager.

……

Along with his driver, Eckhard Groppler, Beckurts was murdered by a roadside bomb at 7:32 AM on 9 July 1986 in Straßlach…… The Red Army Faction claimed responsibility under the name “Kommando Mara Cagol” but the identity of the perpetrators is still unknown.

……

From 1980 until his assassination in 1986 he was a member of the Executive Board and Head of Corporate Research and Technology of Siemens AG.

"

— Wikipedia

Read More

在LNMP的基础上改Redis为UDS连接

使用lnmp一键包安装redis,它会默认开放本地回环来让其他应用连接。更加高效的方法是用Unix Domain Socket来连接,那就要修改相关的配置文件。

如果不知道配置文件在哪,用locate命令来找。

设置redis.conf

参考digitalocean的教程,修改redis.conf,将supervised no改成supervised systemd以便之后写systemd unit来管理redis。然后将dir改成dir /var/lib/redis来让redis 的数据库放在这个文件夹里,符合FHS规范,方便管理。

然后去掉unixsocket和unixsocketperm前面的注释,修改成:

unixsocket /var/run/redis/redis.sock
unixsocketperm 770

第一行设定socket文件在哪,第二行设定socket的权限。关于权限的讨论,看github的这个issue:enable redis connection via unix domain socket instead of tcp #204

设置socket目录开机创建

为了保证/var/run/redis在开机时存在而且权限正确,需要新建一个tmpfile.d文件

1
touch /usr/lib/tmpfiles.d/redis.conf

Read More

空欢喜

早上小黎突然转了条推送,居然是央财开学报到时间的通知:

心跳加速,双手微颤,呼吸急促,赶紧打开携程开始查机票:

飞机比高铁学生票还便宜一半,史无前例好吗!然后准备订票的时候,群里兄弟提醒:

“未接到学院通知……”当场手也不抖了,心也不跳了(大误)。

Read More

今日小记2020-07-28

第一次装机难免被坑。比如虽然第三和第二代锐龙都是AM4接口,但是老的主板比如B450m,因为BIOS 的ROM芯片储存容量太小,装不下那么多驱动,所以为了兼容需要刷新的BIOS来支持第三代锐龙。但是很多奸商,就是京东那些,会表面上写着支持,实际上发过来的是旧BIOS,然后点不亮。以后要多上网了解情况再买。现在知道了,带Max结尾的就是更新过的,ROM更大的主板,就能够原生支持新锐龙了。

Read More