Migrated my blog to a VPS

It was last week when my virtual host service ended. Instead of continue with the virtual host, I decided to upgrade and migrate my blog to a VPS. Here are the major steps you need to do to start a VPS hosting.


1. Installing LNMP to your VPS server.
wget http://soft.vpser.net/lnmp/lnmp1.0.tar.gz
tar -xvf lnmp1.0.tar.gz
cd lnmp1.0
./ubuntu.sh 2>&1 | tee lnmp.log

You need to input your password for mysql root user right after started the installation.
Then you can have a drink, or watch a TV, while waiting for the installation to be finished, because it would be a long long time.

2. Configurating tht LNMP

1) Virtual host management
a) Add a new virtual host
Follow the prompt hint.
Add the domain name you want to bind. If you want to bind multiple domains, you can redo it, or just simply add them together with a BLANK seperated the domains.
Input the host directory for the domain(s).

b) Remove a virtual host
rm /usr/local/nginx/conf/vhost/YOUR-DOMAIN-NAME.conf

3) Install PureFTPd and FTP management console panel.
You need to input:
    Your MySQL's root user password.
    FTP management console password.
    MySQL ftp database password(Just press Enter, the system will generate a password for you automaticly).
After installed PureFTPd, navigate to http://YOUR-DOMAIN-NAME-OR-IP/ftp to start to manage your FTP server

If you ran into an error like this:
    Error: Table 'admin' from database 'ftpusers' doesn't exist.
    MySql error : Table 'ftpusers.admin' doesn't exist

You can go to phpmyadmin (, run these scripts

    DROP USER 'ftp'@'localhost';
    DROP database ftpusers;


wget http://rg4.net/p/vps/lnmp/ext/fix_pureftpd_mysql55.sh

If this still can not work for you, you can choose to not integrate pureftpd with mysql, and manage your ftp accounts with commands like these:
/usr/local/pureftpd/bin/pure-pw useradd ftp -u ftp -d /home/wwwroot
/usr/local/pureftpd/bin/pure-pw mkdb
You can visit http://bbs.rosoo.net/blog-3-8984.html for more details about this configuration for pureftpd.

4) Install eAccelerator

5) Install ionCube

6) Install imageMagick

7) Install memcached

4. LNMP direcotries

nginx: /usr/local/nginx
mysql: /usr/local/mysql
php: /usr/local/php
www root: /home/wwwroot/
Nginx log: /home/wwwlogs/

5. LNMP configuration files

Nginx: /usr/local/nginx/conf/nginx.conf
MySQL: /etc/my.cnf
PHP: /usr/local/php/etc/php.ini
PureFtpd: /usr/local/pureftpd/pure-ftpd.conf
PureFtpd MySQL: /usr/local/pureftpd/pureftpd-mysql.conf

6. Server status

LNMP status: /root/lnmp {start|stop|reload|restart|kill|status}
Nginx status: /etc/init.d/nginx {start|stop|reload|restart}
PHP-FPM status: /etc/init.d/php-fpm {start|stop|quit|restart|reload|logrotate}
PureFTPd status: /etc/init.d/pureftpd {start|stop|restart|kill|status}
MySQL status: /etc/init.d/mysql {start|stop|restart|reload|force-reload|status}

7. GUI

phpinfo: http://YOUR-DOMAIN-NAME-OR-IP/phpinfo.php
phpMyAdmin: http://YOUR-DOMAIN-NAME-OR-IP/phpmyadmin/
sniffer: http://YOUR-DOMAIN-NAME-OR-IP/p.php
PureFTP management: http://YOUR-DOMAIN-NAME-OR-IP/ftp/


Rest courses arrangement(final version)

Due to unknown reason, the course schedule changed again.
I’d say this is really bad, cause everyone knows that students applying for On-the-job degree are busy dealing with both work and study, we have schedules, not only for the courses, but only for jobs.

We prefer a stable schedule. However, plan changes, whatever the plan is, and like it or not.

Here are the last two courses for me:
1. 人机界面技术
人机交互:以用户为中的设计和评估,董建明 等编著,清华大学出版社,2007年
郑全 40/2 课堂授课 11月16,17 23,24

2. 信息检索

电子信息检索与利用 机械工业出版社 作者:刘绿茵
康宇副教授 20/1 课堂授课 12月7,8日