会员登陆  支付方式  联系我们  在线客服  网站地图       
首页 关于域浪 互联网数据中心业务、主机托管、主机租用、机架租用、带宽租用、机房介绍、机房对比、CCN网络加速 adsl专线、深圳adsl专线 虚拟主机、域名注册、数据库、企业邮局、动态域名 网络安全、网络临近平台、安全服务、防火去墙租用、安全产品、域浪抗DDOS防火墙、NetScreen防火墙 技术支持  
   当前位置:首页 >> 技术支持 >> LINUX操作系统 >> Linux下虚拟域名的实现(3)
 
精华文章
    轻轻松松安装 Linux(...  
    轻轻松松安装 Linux(...  
    轻轻松松安装 Linux(...  
    Linux中的应用软件安装...  
    在Linux下使用办公软件...  
    Linux下的经典播放器  
    Linux下的视频播放系统...  
    了解Linux  
    Linux的常用网络命令  
    linux使用技巧二则  
    Linux下的FTP服务器配...  
    Linux下虚拟域名的实现...  
    Linux下虚拟域名的实现...  
    Linux下虚拟域名的实现...  
    Linux下配置DHCP服务器...  
    Linux下添加新硬盘及分...  
    认识Linux下Ext2与Ext...  
    RedHat Linux下防火墙...  
    Linux下硬盘分区的最佳...  
    Linux环境下防火墙配置...  
    Linux环境下防火墙配置...  
    Linux环境下防火墙配置...  
    一张软盘玩Linux  
    让你的Linux用起来跟W...  
    世界4个头号Linux认证...  
    linux2.6.7内核的升级  
    浅谈如何学习linux  
    几个重要的Linux内核文...  
  更多>>  
   LINUX操作系统
 Linux下虚拟域名的实现(3)
    目前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); 



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

  • 上一篇文章: Linux下的FTP服务器配置
  • 下一篇文章: Linux下虚拟域名的实现(2)
  • 域浪网络ISP经营许可证 深圳地址:深圳市罗湖区宝安北路国际商品交易大厦七楼C30室
    Tel:0755-82266883/82267566 Fax:0755-82261966
    邮编:518000 
                        Copyright © 2006-2008 elang.cn All Rights Reserved 深圳市域浪网络技术有限公司版权所有