vhcs (virtual hosting control system) 是德国一家公司开发的虚拟主机控制平台。vhcs的特点:
1. 支持Linux 和 Freebsd(Freebsd 是在最新的 2.4.6版本才支持的,尚未完善)。
2. 遵循GNU  GPL, 开源并且免费,在他们的论坛能得到社区的技术支持。
3. 稳定而易用,支持多国语言(我向开发团队提供简体中文语言包)。

vhcs 支持多种linux发行版本,但是Debian才是它的最佳搭档,它的开发和测试平台是基于Debian Sarge的,下面是在Debian Sarge下的安装步骤。

在开始之前, 保证你使用的版本是Debian Sarge,网络正常并且拥有一个静态IP。
1. 更新Debian Sarge。
apt-get update; apt-get upgrade

2. 安装必要的软件。
apt-get install  ssh postfix proftpd-mysql courier-authdaemon courier-base \
         courier-imap courier-maildrop courier-pop  \
         perl-modules bind9 diff gzip iptables libmcrypt4 mysql-client \
         mysql-common   mysql-server patch php4 php4-mcrypt php4-mysql  \
         libsasl2-modules libsasl2 sasl2-bin apache2 apache2-common bzip2\
         libcrypt-blowfish-perl libcrypt-cbc-perl original-awk libterm-readpassword-perl \
         libmime-perl libnet-dns-perl libnet-netmask-perl libnet-perl \
       
php4-pear procmail tar original-awk libapache2-mod-php4
3. 下载并编译vhcs
     wget http://ovh.dl.sourceforge.net/sourceforge/vhcs/vhcs2.4.6.2.tar.bz2
     tar jxf vhcs2.4.6.2.tar.bz2
     cd vhcs2.4.6.2
     make install
     cd /tmp/vhcs2/
     cp -R etc /
     cp -R usr /
     cp -R var /
     chmod  -R 777 /var/www/vhcs2/gui/tools/webmail/database/

4. 修改mysql的root密码
 mysql -u root -p
    use mysql
    update user set password=password("new_pass") where user="root";
    flush privileges;

5. 安装 vhcs 2.4.6.2
    cd /var/www/vhcs2/engine/setup
    ./vhcs2-setup
   然后会提问一些问题,大部分直接按回车就可以了,其他的按照屏幕提示回答。下面是提问回到的内容:
    Wlecome to VHCS2 ‘2.4 Spartacus’ Setup Dialog.
    This program will set up VHCS2 system on your server.
    Please press ‘Enter’ to continue.
    Please enter system hostname (Enter for defaults) [Zone853]:
    Please enter system network address (Enter for defaults) [192.168.0.128]:
    Please enter SQL server host (Enter for defaults) [localhost]:
    Please enter system SQL database (Enter for defaults) [vhcs2]:
    Please enter system SQL user (Enter for defaults) [root]:
    Please enter system SQL password (Enter for defaults) [none]:
    Please enter VHCS ftp SQL user (Enter for defaults) [vftp]:
    Please enter VHCS ftp SQL user password (Enter for defaults) [none]:
    Please enter administrator login name (Enter for defaults) [admin]:
    Please enter administrator password:
    Please repeat administrator password:
    Please enter admininistrator email address: admin@admin.com
     Congratulations !
    VHCS2 ‘2.4 Spartacus’ Setup completed successfully !
    Please type http://192.168.0.128/vhcs2/ in your
    browser!
  6.  修改mysql和apache的配置让其适合虚拟主机的需要。
   /etc/mysql/my.cnf
   查找 skip-external-locking, 在下面添加一行:
   max_connections = 2000

 /etc/apache2/apache2.conf
   查找  MaxKeepAliveRequests ,将其改成
   MaxKeepAliveRequests    1000, 下方添加:
   ServerLimit 5000
   稍下方可以看到:
<IfModule prefork.c>
StartServers         5
MinSpareServers      5
MaxSpareServers     10
MaxClients          20
MaxRequestsPerChild  0
</IfModule>
修改如下(maxclients的大小请根据你的服务器性能来定,主要取决于ram的大小,一般512M可以改为300,
1G改为 700, 2G改为 1200):
<IfModule prefork.c>
StartServers         10
MinSpareServers      10
MaxSpareServers     15
MaxClients          1000
MaxRequestsPerChild  50000
</IfModule>
修改 /etc/apache2/httpd.conf,在后面加入(Zone86是随便写的服务器名字,你可以改成任何你喜欢的名字,如果没有这个参数apache启动的时候会有一个警告)
ServerName Zone86

执行:
ln -s /etc/apache2/sites-available/vhcs2.conf /etc/apache2/sites-enabled/
/etc/init.d/apache2 restart
/etc/init.d/mysql restart
  
好了,全部工作就完成了,打开浏览器,输入 http://服务器IP/vhcs2/ ,输入刚才的管理员账号和密码就可以登录到管理系统啦。
还有一些其他的设置要修改,等我有空再写吧。

本文原始发表URL: http://hiei.yeax.com/?p=84 作者: hiei < hieixu#gmail.com> 欢迎来信或到原始url来讨论相关技术。