Ubuntu下安装Lighttpd+PHP+MySQL

2010年07月6日   By Demon   11,961 views

Lighttpd是轻量级的网页服务器软件,相较于其他的网页服务器,lighttpd仅需少量的内存及CPU资源即可达到同样的效能。与FastCGI下的PHP组合非常的完美。

安装包Lighttpd和PHP

sudo apt-get install lighttpd php5-cgi

启用FastCGI模式

sudo lighty-enable-mod fastcgi

重启Lighttpd进程

sudo /etc/init.d/lighttpd force-reload

安装MySQL

sudo apt-get install mysql-server

安装PHP的MySQL模块

sudo apt-get install php5-mysql

再重启一次Lighttpd进程就行了

Ubuntu从NTP服务器同步时间

2010年07月5日   By Demon   18,841 views

曾经的曾经,那台Ubuntu服务器的时间老是越走越快。我只看过一点点Ubuntu的书,于是问了一下I大,他给了个链接给我,太长了就懒得看。以下翻译自Ubuntu官方文档

本页描述的是让你的电脑时间保持准确的方法。这对服务器是有用的,但是对桌面机器就没有必要了。

NTP协议是一个为了从网络上同步时间的TCP/IP协议。简单的说,就是客户端向服务器请求当前时间,然后用它来设置本地时间。

……(这里忽略一段)

Ubuntu有两种自动调整时间的方法:ntpdate和ntpd

ntpdate

ntpdate是Ubuntu标准的一部分,并且在开机时会运行一次,根据Ubuntu的NTP服务器设置你的时间。然而,一台服务器的时间在两次重启之间很可能会有很大的偏差,所以偶尔校正一下时间是很有意义的。最简单的方法就是通过cron每天运行一次ntpdate。用你最喜欢的编辑器,以root权限创建一个文件/etc/cron.daily/ntpdate,包含

ntpdate ntp.ubuntu.com

/etc/cron.daily/ntpdate文件必须是可执行的

sudo chmod 755 /etc/cron.daily/ntpdate

ntpd

ntpdate是一个很粗钝的工具——它只能每天校正一次时间,以一个很大的程度。(译者注:文档上面是这么写的,但是我觉得好像不对吧,可以每小时运行一次啊)ntp守护进程ntpd更加的细微。它计算会你系统时钟的偏差并持续的校正它,所以不会有会导致不持续的日志的很大程度的校正。代价是消耗很小的处理能力和内存,但是对于现代的服务器来说这是微不足道的。

安装ntpd:

sudo apt-get install ntp

……(改变时间服务器的省略)

译者:看得懂和翻译得好之间还是有很大差距的……

用JavaScript实现PHP的urldecode函数

2010年07月4日   By Demon   30,519 views

之前写过一篇《用JavaScript实现PHP的urlencode函数》,然后今天查看博客访问量的时候发现了一个来自百度知道的引用。我说过,我很讨厌百度知道之类的东东,理由我就不说了,你打开上面的链接就知道了。别人问的明明是用php的urlencode函数编码以后的东西用JavaScript怎么解码,下面的人给了我文章的链接,我写的可是怎样用JavaScript实现php的urlencode编码啊。问题都不看清楚就乱回答,还说什么“单独写个函数解决这问题”,又不给出代码。别人会写的话还问你做什么?

不要跟我提JavaScript的decodeURI函数,我在之前的文章说过,这个和php的urldecode函数根本不是一回事。下面是我根据高人的代码改写的JavaScript版的urldecode函数,参考的链接在开头提到的文章中有,就不一一列举了。和之前的urlencode函数一样,只实现了utf-8版的。

在线演示(注意在博客首页无法演示)


代码下载地址:

[download id=26]

开机弹出脚本错误对话框

2010年07月3日   By Demon   25,896 views

最近一开机就弹出个对话框说脚本错误,内容如下

An error has occurred in the script on this page.
Line: 1
Char: 1
Error: Syntax error
Code: 0
URL: http://a.alimama.cn/inf.js

很显然某个进程访问了一个包含http://a.alimama.cn/inf.js的网页。脚本错误不是电脑的问题,是写JS脚本的程序员写错了。但问题是到底哪个进程访问了这个网页呢?曾经一个小朋友拿电脑给我看过,也是这个问题,弄了好久都没有解决,Google一下有人遇到过相同的问题,但是都是一群傻逼回答的,什么中病毒啊,中木马啊,重装系统啊,说了一堆废话。我最讨厌什么百度知道,搜狗问问之类的了,回答问题的一点水准都没有,要么复制粘贴,要么说一些毫无帮助的废话,都是去赚积分的。

在所有进程中检查了一下,找到一个ofdl.exe的可疑进程,路径为C:\ProgramData\grirq,结束这个进程以后那个对话框也自动关闭了,显然和这个进程有关。但是找了好久都没有找到这个进程是如何开机启动的,msconfig里面的开机启动项中没有ofdl.exe,也没有其他可疑的程序,而且我禁用所有开机启动项以后重启还是会弹出那个脚本错误的对话框,让我郁闷了很久。之前帮那个小朋友看的时候也是这样。

后来想到通过服务也是可以启动进程的,某些木马就是通过服务来欺骗不明真相的同学的,看来我也不明真相了一回。从msconfig里的服务寻找,发现一个可疑的服务,服务名为DSCN,描述为Data Online Transaction Processing Module,指向C:\ProgramData\grirq\oxar.exe,与ofdl.exe在同一个文件夹,不出意外的话就是它在捣乱了。禁用了这个服务,重启电脑,对话框就没有了,搞定!

用VBS实现Discuz论坛自动回帖程序

2010年07月2日   By Demon   60,968 views

曾经是多么的热衷于刷积分,用C#写了一个Discuz论坛自动回帖程序(源码找不到了)。后来顿悟了,积分什么的,只不过是浮云罢了。其时VBS水平比原来提高了一点,发现用C#写Discuz论坛自动回帖程序有点太大材小用了,用VBS脚本就可以轻松实现Discuz论坛自动回帖程序。能用脚本做的事情,何必用高级语言去做呢?

阅读这个条目剩下部分 »