Edward Linus's personal blog, focusing on coding and etc.

Latest stories

搭建自己的邮件服务器

0x01 前述 博客建立在腾讯云上,原来用的是腾讯企业邮箱提供的SMTP服务器来收发邮件,起初认为都是腾讯产品,应该不至于出太大问题,也方便管理,另外刚开始用的性能还算可以,就凑合着用了。但是这几天回来一试,发信往往需要3s以上的时间,性能低下到无法忍受,甚至出现了掉信的情况。遂弃用腾讯企业邮箱(说到底还是因为用的免费版,没有充钱),利用Postfix+Dovecot搭建自己的邮件服务器。 0x02 环境 腾讯云 CentOS 7.2 0x03 安装和配置Postfix 首先先删除sendmail: Shell yum remove sendmail 1 yum remove sendmail 随后安装Postfix和Cyrus: Shell yum install postfix yum install cyrus* 12 yum install postfixyum install...

极路由1S折腾OpenWRT小记

0x01 前言 宿舍的极路由1s买来也快三年了,经过一次搬家之后WIFI变得非常不稳定,刷官方固件后依然无效,故考虑应该是硬件问题,所幸还能凑活用,勉勉强强又撑过一学期。这学期之后小极的状态就每况愈下了,WIFI消失,各种掉线,即使连上网线掉包也很严重。舍友商量了一下,换了个路由,小极便闲置下来供我折腾了。 0x02 获取root 首先需要在路由器后台高级设置中按提示步骤开启开发者模式(会丧失保修),随后在云插件平台安装“开发者模式”插件即可。 0x03 刷写BootLoader 选用的BL是恩山无线论坛H神的Breed,传送门: 极1S有两个版本,一个是H5661,另一个是H5661A,两者由于CPU有差别,所以固件也有差别,下载时需要注意,刷错型号就变砖,路由器具体型号可以在路由器背面查得。H5661对应固件为breed-mt7620-hiwifi-hc5761...

NGINX正确配置HTTP2而浏览器不认?OPENSSL版本的锅!

前言 博客很早之前就已经配置过HTTP2了,但是心血来潮用HTTP/2 and SPDY indicator一测试,才发现NGINX配置HTTP2并没有成功。 故在网上找了找,发现最近Chrome抛弃了NPN的支持,如果想要在Chrome上以HTTP2访问站点,那就需要OPENSSL 1.0.2以上的版本。 看了下VPS上OPENSSL的版本,竟然还停留在1.0.1,估计那时候yum的EPEL没配置好吧,考虑到安全性(还记得那一波HeartBleed),升级看来是势在必行了。 准备步骤 现在OPENSSL官网上找到最新的源: 这篇文章发布前官网上最新版本是1.1.0,考虑到稳定性我还是选择了1.0.2的源。 Shell wget tar xvf openssl-1.0.2l.tar.gz 12 wget xvf openssl-1.0.2l.tar.gz...

时间序列AR(p)模型在Python中的实现

前言 从60年代初期以来自回归模型就用于水资源规划和设计中,这类模型之所以在水文学中得到重视并有较大的吸引力,其主要原因是它们具有时间相依的非常直观的形式,同时建立模型和具体应用简单。 模型简介 AR模型是一种线性预测,即已知N个数据,可由模型推出第N点前面或后面的数据(设推出P点),所以其本质类似于插值,其目的都是为了增加有效数据,只是AR模型是由N点递推,而插值是由两点(或少数几点)去推导多点,所以AR模型要比插值方法效果更好。 一般自回归模型通常表示为下式: 模型实现 ARModel.py Python #!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 2017-05-05 21:31:16 # @Author : Edward Linus (zhlin@hhu.edu.cn) # @Link : # @Version...

Purge Varnish Cache插件在收到评论后无法更新页面缓存的解决方法

前言 博客一直用着Purge Varnish Cache这个插件进行Varnish的缓存管理,插件通过Varnish提供的Admin面板进行管理,其功能也相对强大,可以选择在收到新的(修改)评论、发布(编辑)文章、添加(修改)菜单时对指定页面(首页/文章/整个Varnish缓存)进行更新。但实际上上述特性中的第一点并不能实现。 Bug重现及排查 在退出登录后(VCL中设置当登录时Varnish缓存机制不启用),对任意一篇文章进行评论,重新刷新文章页面,发现Response Header中X-Cache的状态依然是Hit 同时评论列表中也没有刚刚发表的评论,后台中该评论显示已经通过,以登录状态重新刷新页面,评论能够正常显示,那么想必是Varnish的缓存没有更新了。 先从Varnish查起,Shell中用varnishstat监视Varnish缓存状态,同时重复上述步骤,发现MAIN...

水文测验学中的数字修约C#实现

前言 为了更好的记录数据和查找数据,在进行具体数字运算前,需按照一定的规则确定一致的位数,然后舍去某些数字后面多余的尾数。现在被广泛使用的数字修约规则主要有四舍五入规则和四舍六入五留双规则。 我们对于四舍五入修约规则再熟悉不过了,这个规则贯彻了小学中学,甚至大学的数字修约过程。利用这种方法修约简单快捷,但实际上这种规则由于舍去的是“1、2、3、4”,入位的是“5、6、7、8、9”,这样必然会造成结果的系统偏高,误差偏大1/9。 与此相比,四舍六入五留双规则就精确的多得多,但与此同时也会相对麻烦一些。 四舍六入五留双规则的具体使用方法是: (1)当尾数小于或等于4时,直接将尾数舍去; (2)当尾数大于或等于6时,将尾数舍去并向前一位进位; (3)当尾数为 5,而尾数后面的字均为 0时,应看尾数5的前一位:若前一位数字此时为奇数,就应向前进一位;若前一位数字此时为偶数,则应该将尾数舍去。...

Edward Linus's personal blog, focusing on coding and etc.

Meta