• 服务器迁移计划

    今天升级WordPress时遇到了阻力:PHP的版本不够高,不能升级WordPress。然而之前我的PHP是从源码编译而成的,我并不知道如何更新它。而且最近还想要尝试一下Docker。在这些因素的促使下,我决定迁移服务器。 以下是迁移的计划,每一项都会放入各自的docker中: nginx [✔] ftp [不要了,暂时不需要] php-fpm [✔] mysql [✔] gitblit [✔] […]

  • 去了故宫

    过年上班后的第一周,这个周末去了故宫。本想着过节之后会人少很多,然而网上买票的结果是8万张票全部卖完,所以人当然也不会少了。 在天安门西下地铁,前去天安门的路上,须排队安检,已经是人挤人了。幸而过了安检后,道路渐宽,不再拥挤。行不几步,就到了天安门前。毛主席的画像看着面前广场上的民众,背后则是明清两朝的皇宫,不得不让人感受到时代的无情变迁。 金水桥还是只有一个桥可以通过,经过天安门,端门,午门,进 […]

  • 用VSCode写RPG Maker的Ruby脚本

    前言 最近突然起了兴趣,想要用RPG Maker做点什么。虽然用RPG Maker做基本的RPG很方便,但如果不修改脚本,能做的事情很有限。而如果想修改脚本,内置的脚本编辑器基本就不能好好使用——程序员本能的Ctrl+S无效,Esc无提示地不保存退出,没有语法提示。我想,内心不够强大的人是无法驾驭得了它的。我觉得我不算是内心强大的人,在最初就使用了Notepad++这样的文本编辑器来写脚本。但随着 […]

  • Python2中datetime对象的timestamp方法的替代

    在Python3里,可以直接用datetime对象的timestamp方法得到对应的时间戳。但是Python2又没有,为了兼容,还是要找到替代品,完成同样的事情。

    于是就Google一下“python 2 datetime timestamp”,第一个结果给出了这样的回答: [crayon-67676d3ab814f04842595 […]

  • nginx配置禁止某些IP访问

    有时候,会有人用爬虫来爬网站,而你并不想被他们爬,那就设置规则,禁止他们的IP地址吧! 在/etc/nginx/nginx.conf文件里的http段加入deny语句就可以禁止特定的IP地址访问:

    然后爬虫就不能访问了,网站就清静了。但是访问数掉光了,看上去也没什么真人来访问我的网站😭。

  • 用acme_tiny自动获得Let’s Encrypt的证书

    从今年7月开始,Chrome会将所有HTTP网站标记为“不安全”。这对站长来说是件有点难过的事情,因为要费心去配置证书,不然在别人看来,你就是个不安全的网站(其实即使是HTTP明文也未必会不安全,网站还是能够做加密)。买证书是个肉疼的事情,又多了一笔开销。幸好还有免费的证书可以使,那就是Let’s Encrypt,真是良心。可惜这个站申请的证书只有3个月的期限,要是手动更新还不得麻烦死 […]

  • C#中new Task中使用async lambda表达式后start的一个坑

    C#中的async/await/Task机制是个非常方便的功能,可以将异步的功能写成像同步一样易懂。在其背后,编译器做了一些脏活,比如将async方法从await的地方切开成多个方法,按顺序在线程池中运行。这其中也暗藏了一些坑,如果不是非常有经验的程序员可能就掉进去了。 比如如下的程序,会输出什么呢?

    这个程序开了两个Task,第一 […]

  • 如何编写油猴脚本

    前言 说到浏览器插件,喜欢研究的人一定不会陌生。一般来说,浏览器的插件都是会改一些网站的页面,做到类似去广告、增加功能的事情。在逛论坛的时候,我发现这样一个插件:TamperMonkey,也就是油猴。和其他插件不同,这个插件相当于是一个引擎,用户可以在其中安装或者开发想要的脚本,以完成自己想要的事情。另外一个好处是,这个插件已经支持了目前所有的主流浏览器(当然,没有国产的浏览器……),所以只要写一 […]

文章导航