您的位置:首页-> 操作系统-> Linux-> Linux下虚拟域名的实现(3)

Linux下虚拟域名的实现(3)
作者:Admin 时间:2003-12-24  来自:ASP教程  选择阅读文体:



目前Linux操作系统十分火爆,所以很多朋友希望了解一下Linux下虚拟域名的实现过程。下面就基于目前比较流行的RedHat来讨论一下。 三、CGI程序的编制

要实现虚拟域名的在线申请,就必须编写相应CGI程序动态修改独立的配置文件(即上面的vhostdbm文件)和进行用户的管理(包括用户申请,登录,密码修改等等)。在此只介绍对独立的配置文件的操作,其他属于如何用Perl语言来编写CGI程序,请参考有关资料。

vhostdbm文件使用dbm格式来记录数据,与用普通文本文件相比可加快寻找速度,而且易于修改。许多UNIX系统都具有叫做dbm(database management)的标准库。该库将键-值对的集合存贮到一对磁盘文件中,提供简单的数据库管理工具,可以方便的更改、新增或删除数据内容。

Perl访问dbm的方式:通过一个类似于打开文件的进程将关联数组与dbm数据库联系起来。在数组中创建新元素时立即就更改了dbm数据库。删除一个元素的同时也删除了dbm数据库中的数值。可使用:

1、欲将dbm数据库与dbm数组相关联起来:

dbmopen(%arrayname,"dbmfilename",$mode);

如果dbmfilename不存在的话就新建该库。%arrayname参数是Perl的关联数组(如果这个数组已经有值,那么这些值就被删除)。该关联数组连接到叫做dbmfilename的dbm数据库中。$mode 参数是当需要创建库时控制库文件权限的数字,该数字被指定为8制,经常被用到的是0644,给除了机主之外的新用户以只读的权限,机主可有全部权限。

2、关闭dbm库:

dbmclose(%arrayname);
%arrayname 是已经与dbm库关联了的数组名。

例6、VHOST打开vhostdbm,或新建一个dbm库:

dbmopen(%VHOST,"vhostdbm",0644);

例7、新建记录或更改已有记录(设从html文件form中传过来的参数名为vhost、rhost):
$VHOST{$FORM{'vhost'}}=$FORM{'rhost'};

例8、删除已有记录(设从html文件form中传过来的参数名为vhost):
delete $VHOST{$FORM{'vhost'}};

例9、关闭vhostdbm:

dbmclose(%VHOST);

注:以上已经假设传过来的参数经过了验证,不存在重复的记录,否则会导致已有记录的混乱。(出处:PConline)



上一篇:Linux下虚拟域名的实现(2) 下一篇:让我欢喜让我忧:短信袋鼠试用手记

GoogLe中搜索“Linux下虚拟域名的实现(3)”相关内容...
百 度 中搜索“Linux下虚拟域名的实现(3)”相关内容...
一 搜 中搜索“Linux下虚拟域名的实现(3)”相关内容...

相关文章

WindowsXP
注册表
Windows9.x
Windows2000
Windows2003
WindowsMe
Linux
开始
提升QQ等级 QQ挂机升级外挂
国内首发 韩国版QQ自定义头像
挖掘Windows XP系统安装盘中的神秘宝藏
初见photoshop8.0的庐山真面目!
BT下载速度之战:Bitcomet对决比特精灵
腾讯最新漏洞-------QQ红钻任你拿
Windows XP 的安装
如何制作万能DVD
浅谈Windows XP SP2补丁包的安装及使用
RM,RMVB转VCD
轻松安装Red Hat 9.0
Linux的常用网络命令(一)
Linux中流媒体Helix Server的安装和配置
再谈远程控制linux下
安装LINUX的详细过程图解
初次安装Linux系统手记
Linux系统的安装和配置
[基础知识]Linux新手系列之二
国产中文操作系统OpenDesktop
Linux的常用网络命令(二)