INSRAQ.me

10分钟在VPS建立一个30MB内存以下的LLMP环境

其实,你只需要1分钟就能建立一个LNMP环境。需要Debian或者Ubuntu作为系统。


# wget http://github.com/lowendbox/lowendscript/raw/master/setup-debian.sh
...
# bash setup-debian.sh system
...
# bash setup-debian.sh exim4
...
# bash setup-debian.sh nginx
...
# bash setup-debian.sh mysql
...
# bash setup-debian.sh php
...
# bash setup-debian.sh wordpress blog.example.com

来源是著名的LEB Script。如果你和我一样也喜欢Lighttpd,可以参考一下方法,在3台Debian 32位的VPS上测试通过。

首先设置基本系统和MySQL

先选择最快的源

# apt-get install netselect-apt
...
# netselect-apt -n
...
# cp sources.list /etc/apt/sources.list
# apt-get update && apt-get upgrade

我比较懒,直接用了LEB Script:

# bash setup-debian.sh system
...
# bash setup-debian.sh exim4
...
# bash setup-debian.sh mysql
然后搞定Lighttpd和PHP
# apt-get install lighttpd

Lighttpd的 simple-vhost 模块是否启用

# lighttpd-enable-mod simple-vhost

然后建立虚拟主机,因为simple-vhost模块,所以这一步很简单,比Nginx简单多了,这是我喜欢Lighttpd的一个原因。

mkdir -p /var/www/hi.insraq.me/html

然后去你的域名注册商添加一条A记录,比如我,把@hi.insraq.com@解析到我的VPS的IP,直接通过hi.insraq.com访问网站了。

接着搞定PHP
# apt-get install php5-cgi php5-mysql php5-curl

然后修改配置,我喜欢用vim,如果不习惯可以用nano:

vi /etc/lighttpd/conf-enabled/10-cgi-php.conf

添加以下的的配置:

server.modules += ("mod_cgi")
cgi.assign = (".php" => "/usr/bin/php5-cgi")

重启一下

/etc/init.d/lighttpd force-reload

然后就应该可以处理PHP了。由于MySQL在第一步已经搞定,所以LLMP的环境就完成了。

这是我的内存占用:

root@insraq:~# free
             total       used       free     shared    buffers     cached
Mem:       1048576      23516    1025060          0          0          0
-/+ buffers/cache:      23516    1025060
Swap:            0          0          0
再补充一下phpMyAdmin的建立
apt-get install phpmyadmin

他会让你选服务器,什么都别选,我们要自己配置。

# vi /etc/lighttpd/conf-enabled/hi.insraq.me.conf

加入以下内容:

$HTTP["host"] == "hi.insraq.me" {
    alias.url += ("/phpmyadmin" => "/usr/share/phpmyadmin")    
    server.error-handler-404 = "/index.php"
}

第二行其实和phpMyAdmin没关系,而是可以解决WordPress和TextPattern等等很多CMS的Clean URL,不需要可以注释掉。

另外,为了安全考虑,关闭Lighttpd的目录列表。

# vi /etc/lighttpd/lighttpd.conf

把下面这行注释掉

#server.dir-listing = "enable"

现在我把英文站完全迁移到了hi.insraq.com,内存占用保持在30MB以下。

             total       used       free     shared    buffers     cached
Mem:        393216      27448     365768          0          0          0
-/+ buffers/cache:      27448     365768
Swap:            0          0          0

再次更新网站风格

前一版本的风格我非常喜欢,一直计划着改,但是舍不得。这次改版本来想只是变动一下 Works 的页面,后来就索性全改了。

(上一版本的风格,点击这里放大。)

我也来越靠近Minimalism的风格了,简洁是很吸引人的,可惜的是内容一多,再改版总是被限制。以前的那种把数据全部archive一下然后全新开始的做法,现在肯定不能了。网站太多重要的数据,也有许多付费的客户,所以要小心翼翼。

新版的风格就是你现在看到的,这次终于开始区分中英文的CSS了,以前总是凑合着把两个合一,如果又不合适的,就放弃中文,保留英文,这次终于发现这样行不通了。英文设计比中文设计要有选择的多,主要是英文字体的优势。中文就那么两个(宋体和微软雅黑)字体,英文其实也不多,但是有sIFR和cufon等等字体替换技术,所以要好得多。

前一篇文章已经说了,我换了一个空间服务商,Dreamhost的down time实在是不够低,加上后台的Panel不是cPanel,用起来不舒服。近来经常去WHT看帖子,看一些便宜的shared hosting或者VPS的Offer,觉得主机这个行业实在是竞争太大了,因为很难有什么区分度。绝大多数中小主机商都用WHMCS的解决方案,成本很低,建立也很快(倒下也很快)。对于许多第一次建站的人,买一个极其便宜的小主机也是不错的选择,不过记得要月付,而且要用Paypal。

在两个支持SSH的空间之间搬家指南

好长时间不写中文的Blog了,反而是英文的Blog更新非常勤快。hi,insraq!运营将近1年了,原来的主机(Dreamhost)要到期了,不想续费了,决定搬家,从Dreamhost到了Hawkhost。用了Hawkhost大概半个月,还比较满意。

之前先说说为什么选Hawkhost,我不是很喜欢“Unlimited“类型的主机,因为超售现象很普遍,所以质量就没法保证了。
我的网站很小,不需要很大的空间和流量,据我的观察,一个月大概用了几个G的流量,一年下来用了不到100MB的空间。然而我空间上的文件都很重要,许多付费风格文件还有客户信息都存在这里,所以我要求空间足够稳定。在Webhostingtak.com看了许多评论,最终选了Hawkhost。
Hawkhost品牌并不提供Unlimited类型的主机(Unlimited类型的主机由旗下品牌FrogHost提供),有几种类型可以选择,机房有达拉斯和西雅图还有华盛顿特区,其中西雅图机房到国内和香港的速度都很不错。而且在我用的这段时间,网站很稳定,没有遇到宕机。而Dreamhost的在线率就没有我想象的那么好,宕机时有发生。
Hawkhost的价格并不是很便宜,和一些超便宜的“Unlimited“主机相比,然而我最看重的是Hawkhost基本功能很全面,不限制域名绑定,提供SSH支持(这一点很重要),服务器是Litespeed。
Hawkhost有一个小小的缺点,就是初次申请等待时间很长,要一天。许多主机都是立即开通的,而Hawkhost对于用户要进行欺诈风险检查和人工审核,所以加长了开通时间。

从Dreamhost备份

登陆SSH,输入用户名和密码。
先备份数据,假设你的网站根目录是 public_html

$ cd public_html
$ tar -czvf move.tar.gz *

之后你就得到了一个move.tar.gz的文件,里面是你网站的文件。

再备份数据库

$ mysqldump -u username -p database > move.sql

会提示你输入密码,输入后过一会就会完成。这样就得到了move.sql文件,这就是数据库文件。如果你有多个数据库,则需要每个数据库生成一个.sql文件。

这样就搞定了备份的部分。

导入Hawkhost

同样,用SSH登陆,先获取旧的数据。

$ wget http://www.yoursite.com/move.tar.gz
$ wget http://www.yoursite.com/move.sql

然后解压数据

$ tar -xzvf move.tar.gz

然后导入数据库

$ mysql -u username -p database < move.sql

会提示你输入密码,然后过会就会完成,同样,如果有多个数据库也要分别导入。

到这里还没完,接下来就是繁琐的修改配置文件( config.php 或者 mainfile.php 等等 ),要换上新的路径和数据库信息。

这样之后基本就差不多了,享受新主机的新鲜感吧。

最后,推荐一下Hawkhost的主机,不过我也只买一年,自己也是爱折腾,准备之后上一个VPS玩玩。

最近很忙

最近很忙,不过有几条更新:

  1. XOOPS China 换了一套春节的风格,想看要快,否则不知哪天就撤下来了。
  2. 入手了一台Acer Aspire One上网本,现已送修。
  3. 在Google Buzz耗掉了不少时间。
  4. 最近没有新的风格计划,但是却一直有做关于XOOPS的事情。
  5. Windows Phone 7的新UI似乎得到了大家的一致赞扬。
  6. IE 9貌似也有谱了,不过能彻底淘汰IE 6/7才是王道。
  7. Tex, Latex和Vim是好东西,可惜我都不会,PDF是伟大的发明。
  8. 笔记本上的Kubuntu无缘无故的就崩溃了。
  9. 最近看完了《明朝那些事儿》。
  10. 这一条是为了凑够10而写的。

Web Design 101

Read the English article

这是一个网页设计入门课程,免费,任何人都欢迎来。地点在香港中文大学,课程网站: insraq.com/cu 如果感兴趣可以报名。课程所用的PPT会通过电邮发给你。

第一次课程:
时间:6:30pm ~ 9:30pm 1/23 星期六
地点:NAH 11 (新亚人文馆 课室11,门口有指示)

第二次课:
时间:6:30pm ~ 9:30pm 1/30 星期六
地点:NAH 11 (新亚人文馆 课室11,门口有指示)

第三次课:
时间:6:30pm ~ 9:30pm 2/6 星期六
地点:NAH 11 (新亚人文馆 课室11,门口有指示)

英文的帖子和课程网站有更详细的内容,估计放在这里很少有人看,看了也很少人能来,所以就不翻译了。