最近开发一个项目,需要在一个周期内执行许多个类似的任务。 印象中的PHP无法异步执行代码,所以计划使用PHP格式化MySQL的数据,然后提交给Bash Shell Script处理,毕竟在Bash Shell下,可以利用许多GNU程序的组合来实现我的需求,更重要的是在命令末尾加一个”&”符号,即可把任务丢到后台执行,立刻开始下一个任务,最后一切就绪后再提交结果给PHP收尾。 不得不说这是一个很糟糕的方案,虽然数据经过PHP初步格式化,但Shell Script仍然要使用一部分文字处理工具处理数据,其中可能因为某个字段数据比较特殊而出错,由于执行任务需要调用多个程 […]
Category: 默认分类
Nginx下简单实现MediaWIKI的伪静态
最近要写一个说明文档,于是就用上了MediaWIKI。 这东西默认情况下,文章地址格式为http://domain/index.php?title=标题。 如果要改成使用http://domain/标题 的方式访问,rewrite规则明显有点繁琐,除非使用 if -e判断文件是否存在,否则正则表达式的.*会把一切东西,包括静态资源也匹配进去。 想了想,于是决定把文章的地址都变成子目录的形式:http://domain/wiki/标题,这样的话伪rewrite规则就变得简单多了,对/wiki进行匹配即可,仅需一行代码:
1 |
rewrite ^/wiki/(.*) index.php?title=$1 last; |
然后修改M […]
WHMCS(PHP程序)防止IP欺骗(伪造X-Forwarded-For)
前面发布了一篇文章,讲述了多重代理时防止伪造X-Forwarded-For的方法。 那只是针对使用代理服务器的情况。虽然没使用代理服务器时,很少会出现这个问题,但是也不排除有些傻逼PHP程序,如果X-Forwarded-For的内容不为空,就会主动拿来当做访客真实IP。使用CDN的话,还能获取访客的正确IP,但是没使用CDN的话…… 这岂不是让那些不法分子有机可乘了吗? 大名鼎鼎的WHMCS就是其中之一! 其实如果要解决这个问题,在该PHP程序中,把类似这样的代码删掉就行:
1 |
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_FORWARDED_FOR']; |
但是,上面所说到的WHMCS,并非开源P […]
博客,三周年
三年前的昨天,是我的博客诞生之日。 如果没看到右边栏的倒计时已经变成“在XXXXX之前”了,我都没发现三周年已过…… 博客如何诞生,谈了两年了,不想再说…… 这一年里面,最最最最最感激的人,非飛天鼠莫属。在这可以估量的九个月中,他对我人生的影响,是无法估量的…… 现实生活中,我比较内向,没什么朋友,除了和他聊天,就是和他聊天。不仅让我学会很多东西,同时还给我带来很多欢乐…… 三言两语难说尽,此处省略大概一万字…… 第二个要感谢的人,开玩笑。最让我印象深刻以及感动的是,新年期间,我没有向他提出任何的要求,更从来没有想过要别人给我东西,但是居然主动送了我一个QQ会员,这是前所未有的…… 如果没有他 […]
一次有惊无险的数据恢复
昨晚逛自己博客的时候,发现单手摘JJ的头像变成“无头像”的那种了! 查证了下,是缓存的问题,要解决?很简单,清除缓存就行了。结果由于一时粗心,误在博客的根目录执行了rm -rf *,然后Ctrl+F5。403!再次F5,403,F5,403,F5,403…… 当时瞬间惊呆了!我干了啥?我在做梦吧! 不是做梦,没其他办法,唯一的希望就是数据恢复了!Linux上的数据恢复,我还没试过,不过,为了自己的博客,只能尽力而为了! 谷歌百度,尝试了debugfs,ext3grep。 debugfs,恢复的文件夹是一个文件……ext3grep,搞了一堆不知道啥,满屏幕的DDDDDDDDDDDDDDDDDDD […]