主要联系方式
 客服热线:020-85641328
 报价热线:020-85640755
 电子邮件:
  客服QQ:1597007
  商务洽谈QQ: 469373529
  技术咨询QQ: 504770500
  人才招聘QQ: 77428811
  商务洽谈MSN:Dodisw@hotmail.com
  技术咨询MSN:Dodijs@hotmail.com
  当前时间:
   站内地图
首页
网站建设
广州网站建设业务介绍 广州网站建设业务介绍
广州网站建设套餐 广州网站建设套餐
广州网站建设流程 广州网站建设流程
广州网站经典案例 广州网站经典案例
广州网站租用 广州网站租用
广州网站租用 广州网站订单
互动多媒体
互动多媒体业务介绍 互动多媒体业务介绍
互动多媒体设计报价 互动多媒体设计报价
互动多媒体经典案例 互动多媒体经典案例
光盘刻录 光盘刻录
影视动画
影视动画业务介绍 影视动画业务介绍
影视动画设计报价 影视动画设计报价
影视动画经典案例 影视动画经典案例
平面广告
平面广告业务介绍 平面广告业务介绍
平面广告设计报价 平面广告设计报价
印刷服务 印刷服务
平面广告经典案例 平面广告经典案例
软件开发
正版软件销售 正版软件销售
软件开发 软件开发
游戏开发
游戏开发业务介绍 游戏开发业务介绍
游戏开发制作报价 游戏开发制作报价
电子商务
虚拟主机 虚拟主机
域名注册 域名注册
网络实名 网络实名
企业邮箱 企业邮箱
网站推广 网站推广
网站维护 网站维护
信息中心
网站建设知识 网站建设知识
互动多媒体知识 互动多媒体知识
影视动画知识 影视动画知识
软件知识 软件知识
平面广告知识 平面广告知识
游戏知识 游戏知识
电子商务知识 电子商务知识
 
 
 
信息中心     
· 网站建设相关文章
· 互动多媒体相关文章
· 影视动画相关文章
· 软件开发相关文章
· 平面广告相关文章
· 游戏相关文章
· 虚拟主机相关文章
· 域名注册相关文章
 
当前位置:首页 → 信息中心 → 行业信息 → 用PHP编程开发“虚拟域名”系统
用PHP编程开发“虚拟域名”系统

广州多迪发布:2006-6-3 16:34:31 阅读 57

如果自己的服务器也能够实现简记域名就好了。其实这并不复杂。你也可以做一个简记域名系统。

  简记域名系统的关键技术在于:实现Web页面的重定向(Redirctory)。在本质上,简记域名系统和虚拟机系统完全不同。虚拟机的虚拟域名和IP是存在一一对应关系的。而简记域名系统不需要将域名和IP做一一映射。也就是说,它根本不需要复杂的域名解析机制和虚拟机来完成,它所做的事情就是当你在请求yourname.somedomain时,将你的浏览器重新定向到你本来存放Html页面的地方。

  本程序运行环境是:RedHat 5.1 Linux下的Apache1.3.6 Web服务器+PHP3语言。在编写程序之前,我们首先要设置好我们的服务器。首先要让Apache服务器支持php3。到ftp.redhat.com下载mod_php-2.0.1-9.i386.rpm,安装后,修改/etc/httpd/conf/http.conf文件,去掉#LoadModule php3_module一句前面的#注释号,同样在/etc/httpd/conf/srm.conf文件里去掉#AddType application/x-httpd-php3 .php3前面的注释号,同时在DirectoryIndex一项后添加index.php3。重新启动Apache Server,此时服务器就支持标准的php3语言脚本文件了并能将index.php3作为默认的首页。

  设置DNS服务器,使其能对泛域名解析。一般的Unix和Linux系统的DNS解析都是由Bind守护程序完成的,Bind4和Bind8的配置文件分别/etc/named.boot和name.conf,配置时根据你的系统修改。设置Bind的配置文件/etc/named.boot,在其中加入“primary domain.com db.domain”一句,添加一个新的域记录。在/etc/name.conf中加入:

  zone "domain.com" {

  type master;

  file "db.domain”; };

  在/var/name/中新建主域记录文件db.domain,其格式为:

  N SOA dns.domain.com root.domain.com (

  199811291 ;Serial

  28800 ;refresh

  7200 ;retry

  604800 ;expire

  86400) ;minimum

  dns

  MX 10 dns.domain.com.

  dns A 202.115.135.50

  www A 202.115.135.50

  * A 202.115.135.50

  关键是最后一句,即将整个域可能出现未做标记的所有Hostname全部指向同一IP。 执行/usr/sbin/ndc reload,重新加载域名数据库。测试一下,此时应该随便ping一个domain域内的主机(除已经标记的),都指向了指定的IP,那么DNS服务器设置完成。

  最后一步是编制PHP3脚本。我们刚才已经在图中详细的说明了整个的原理,所以写一个重新定向的程序就不是很难了。

  让我们来看一个由IE5.0送出的完整HTTP头信息:

  Accept: application/vnd.ms-excel, application/msword, application/vnd.ms-powerpoint,image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*

  Accept-Encoding: gzip, deflate

  Accept-Language: zh-cn

  Connection: Keep-Alive

  Host:ww.yahoo.com

  User-Agent: Mozilla/4.0 (compatible; MSIE 5.0b1; Windows 98)

  我们需要在整个HTTP头信息中取出Host信息,然后将http://www.jj.jx.cn/www.xxx.xxx/default.htm形式的第一部分“www”,即HostName(也即是用户注册的name)单独取出,作为重定向检索的关键字。

  检索到用户注册的URL信息后,我们给用户浏览器送一个重定向命令“Localtion: http://www.jj.jx.cn/somewhere/sample.html”,将用户重定向到指定页面。

  在PHP3中,有函数GetAllHeader(),取得浏览器送出的HTTP头信息。我们主要需要使用此函数来完成整个程序。

  后面附有源程序,由于只是实验性质的,所以在查询用户信息时,没有使用数据库,如果整个系统要实际应用的话,一定要和数据库挂接起来,不然查询用户信息的过程将是十分漫长,大大影响效率,而且用户数据的管理也不方便。

  在源程序中,所有用户信息记录在data子目录下user.dat文件中。其格式为:

  username:

  http://octopus.cdit.edu.cn/~qap213/index.html

  附PHP3源程序:

  <?

  //Get HTTP’s Header and parse it//

   = getallheaders();
'www.knowsky.com
  while (list(, ) = each()) {

  if(=="Host"){= strtok(,".");}}

  //Jump out the Banner's Window//

  echo '<script language="JavaScript">',

  'msg=window.open("banner.htm","sample",

  "toolbar=no","directories=no",directories=no","menubar=no");’,

  '</script>';

  // seek the user information from the recorded file//

  if(!=file("data/user.dat")){echo "Open Data File Error!!";}

  ="http://";

  for(=0;<count();++)

  if(strtok(,":")==){

  =; }

  if(=="http://"){echo "not found the uesrname of Data!";}

  else{

  echo '<meta http-equiv="refresh" content="0;','url=',,'">';}




网站建设: 企业网站开发FLASH网站设计大型数据库开发网站视觉设计网站优化网站推广域名注册虚拟主机企业邮局
多媒体设计: 多媒体光盘产品演示会议演示动画企业形象宣传片FLASH游戏制作商业计划演示展会宣传光盘儿童动画片
平面广告: 广告设计标志设计产品画册设计海报传单设计产品包装设计VI设计菲林印刷

收藏本站 | 设为首页 | 人才招聘 | 营业执照
工商注册
Copyright @ 2004-2006 广州多迪网络科技有限公司 版权所有  法律顾问:广东正大联合律师事务所 吴炳波
公司地址: 广州市天河区黄埔大道中126号2701 咨询电话: 020-85640755 020-85641575 传真:020-85641328