关于Web编程异步模型的白日梦

早上刷牙,处于半睡状态。突然想起昨天晚上看到的那个 go-lang 的 MVC 框架,若使用 go func() 方式异步获取数据,应当是不错的。窃喜……梦醒……

在地铁上被前前后后那些特种男女逼到车角,无奈。又想起早上那个白日梦,遂上网搜索了一番。得老赵的佳作一篇《F# 与ASP.NET(1):基于事件的异步模式与异步Action》。之前看过,由于对微软无爱,未能细品。今日一读,如醍醐灌顶,豁然开朗。

遂整理思路如下,以待后用。
Continue reading 关于Web编程异步模型的白日梦

关于昨日爆出的 Nginx + PHP CGI 漏洞的一点点补充

我第一次看到这个漏洞是在 Laruence 的博客。看完之后,我赶紧评估了一下我们正在开发的产品出现这个漏洞的可能性。还不错,在我们当前架构下,这个漏洞被成功利用的可能性为 0 ……

结果,今天在大嘴巴 cnbeta 看到了这篇很标题党的新闻《80后发现nginx 0day漏洞,上传图片可入侵100万服务器》。然后引用的出处是这里

好了,我认为我提供的背景资料足够详细了。现在说说为什么我们的产品不会出现这个被利用的可能吧。

其实很简单,将资源文件和 php 脚本文件放在不同的域名下面。然后将资源文件(含产品自身的和用户贡献的)的访问限于只作文件传输,不作任何的脚本解析。

例如 PHP 脚本执行的主机名是 www.mikespook.com。而上传文件和图像、js、css 等放在 static.mikespook.com 主机名下。

其实,就是这么简单的一个隔离措施,就避免了出现这种上传并解析的漏洞。

即使想用同一个域名,通过对 nginx 的配置禁止资源文件目录下的文件被当作脚本解析也是很容易的。

这个故事教育我们:细节是基石,架构是王道!!!

另,根据来自高春辉的可靠消息,手机之家也不存在此问题……

豆瓣上的一个很欢乐的帖子

帖子详情,请看这里:

1kg的水绝对不可能浮起2kg的东西。

看过之后我乐了,连游戏都没打,一晚上跟着这群疯子一起疯……

豆瓣,果然是文艺青年装科学怪兽,科学怪兽装文艺青年的好地方!

阿基米德他老人家这会应该挺伤心,当时计算的时候咋没在澡盆里放几个屁,那计算结果自然……

呃,转基因玩残了,阿基米德也玩败了,接下来是谁了?

牛顿?高斯?

要不玩个活着的?霍金如何?