pcntl_fork 引起的奇怪 bug 最近随手写了个获取软件最新版本号的程序,但是在处理多进程并发的时候遇到了问题。我想在用户请求的时,输出已经保存的版本号,同时异步抓取最新的版本号。 数据存储用的 redis,在父进程中,与 redis 的通讯没有任何问题,但是在子进程中,与 redis 的通讯就会出现问题,会报类似 PHP Notice: Redis::setex(): send of 47 bytes failed with 2015-01-12 程序员 #fork #Linux #pcntl_fork #PHP #redis #unix
2014 年终总结 本来十分讨厌写这种矫情的文章,但是想想还是写点什么留作纪念吧。 这一年仍旧是平淡无奇,除了在深圳谋了份差事外也没什么大事,或许是因为我不喜欢改变吧,不知不觉一年就过去了。 来深圳之前,本以为能通过这份工作学到什么东西,但一年下来,发现学习依然是靠自己,指望能从工作中学到什么新技术基本是不可能的。工作更像是作业,只能巩固加深学到的东西,很难学到新的东西。 由于工作需要,经常需要回答一些小白的问题,本 2015-01-01 杂文 #2014年 #年终总结
工作笔记(二) 嗯~又是好久没写博客了,工作倒是不忙,就是懒得写…… 今天朋友让我帮忙看个 bug,虽然最后 bug 并没找到(程序太乱,还涉及到 ucenter 对接),不过倒是发现了几个很常见的漏洞,很想吐槽他们的运维(兼职的)。 首先,一堆弱密码,连数据库都是,这点就不细说了,无力吐槽。 可能是为了做备份,服务器上有个 config.php.bak 文件。好吧,做备份是个好习惯,但备份不是这么 2014-09-29 信息安全 #网络安全 #工作笔记
工作笔记(一) 最近越来越懒,两个月没更新博客了,这篇文章就记录下最近碰到的(其实有一个月了……)三个安全问题吧。 慎用 trim先上个实例,虽然这个漏洞还没完全公开,但影响不大,直接上 WooYun 的链接。 先看 system/Zend/Db/Adapter/Abstract.php 中的这一段,Zend Framework 自带的数据库语句过滤函数会转义 2014-06-24 程序员 #PHP #网络安全 #工作笔记
使用 OpenSSL 颁发企业级证书(一) 先来解释下这里的“企业级”,正规的证书颁发机构所签发的证书往往具有多级 CA(Certificate Authority,数字证书认证机构),根 CA 的私钥离线保存,而二级 CA 严格限制了证书的用途,加上 OCSP(Online Certificate Status Protocol,在线证书状态协议)和 CRL(Certificate Revocation List,证书吊销列表),这样就保 2014-04-28 教程 #OpenSSL #证书
已修复 OpenSSL 心脏出血漏洞 OpenSSL 在 2014 年 4 月 7 日爆出心脏出血漏洞(Heartbleed Vulnerability),本站也受到了影响,但我已经在第二天(4 月 8 日)通过更新 OpenSSL 的方式修复了漏洞,又在第三天(4 月 9 日)重新购买了 sinosky.org 的 SSL 证书,并 reissue 了 ezdl.it 的证书。 受此漏洞影响的版本有 OpenSSL 2014-04-11 信息安全 #OpenSSL #CVE-2014-0160 #心脏出血漏洞
给 C++ 初学者:简易化 Windows 7/8 风格 MessageBox Header 不定期更新,给 C++ 初学者的福利。 谁说编程初学者就不能做出美丽、优秀的程序了?当然,只用今天这个做出来的程序充其量也就算美丽……至于优秀吗,请等更新。 今天新鲜上架的是 MessageBox-7,简易化 Windows 7/8 风格的提示窗口。已经有年数的 MessageBox 在新版 Windows 上调用出来简直不堪入目,Windows Vista 以上系统微软推 2014-04-06 程序员 #Windows #C++ #初学者
Pushbullet —— 推送神器 推送通知可谓是移动通讯中的伟大里程碑之一,它改变了很早之前人们需要隔一段时间打开众多应用程序(那时候的手机软件似乎还不被称作“应用”)被动获取信息的窘境,将备受期待的新消息在产生的第一时间传递给用户,可算极大方便了人们的生活、娱乐。 Pushbullet 就是在“推送”上作了文章,而且还是下足了功夫。Pushbullet 通过 Google 账户登录,目前支持 Windows, iOS, Andr 2014-04-05 应用软件 #Google #自动化 #软件
设置 sysctl 和 iptables 防攻击 sysctl 可以显示和修改内核参数,包含一些 TCP/IP 堆栈和虚拟内存系统的高级选项,合理设置可以显著提高系统性能。iptables 是 Linux 下最常用的防火墙软件,也是很多 Linux 发行版自带的默认防火墙软件。通过设置 sysctl 和 iptables,可以有效防范中小程度的攻击。 注意: 文中的规则只适用于小网站,请根据服务器实际情况调整相关数值。 2014-02-25 Linux #DDoS #iptables #sysctl #防火墙
另类方法防垃圾评论 这种方法我称之为“两步验证”,原理就是在用户点击评论框时,异步请求一个网址,然后根据当前的时间戳和预先设置的密钥生成 cookie 存储在客户端中,提交评论的时候验证这个 cookie 是否存在且正确。在用户注册等场合也可以使用这种方法。 这种方法也是反向图灵测试的一种,但最大的问题是:任何请求都是可以模拟的,所以这种方法只能防拿着别人写好的垃圾评论机的菜鸟。如果真有人那么蛋疼,专门为这种方法写一 2014-01-27 WordPress #AJAX #comment spam #垃圾评论 #异步