假设我们需要提供server3.htm' style='text-decoration:none;' >域名为abcdec.cn的虚拟域名服务,5945.net主机所默认的WEB服务的默认文档为index.php(默认文档页面名可以由WEB Server设置),那么该页面程序就应负责将abc.abcde.net重定向到我的免费空间。那么,我们的程序首先需要分析用户所访问的三级域名是什么。 index.php: $domain=$SERVER_NAME; //取得用户所访问的域名全称 $domain=eregi_replace('.abcde.cn, '', $domain); //截取server4.htm' style='text-decoration:none;' >域名全称,获取用户所要访问的三级域名,获取所访问的域名全称,可以直接使用PHP系统变量$SERVER_NAME或者$HTTP_HOST,注意引用系统内部变量必须大写。事实上PHP系统内部已经对用户浏览器发送的访问请求头信息进行了全面的分析,并分割成、保存成相应的系统变量,以方便程序使用。第二个语句使用正则替换,查找“.5945.net”并替换成空字符,这样就获得了三级域名。 通常,一个大型的虚拟域名服务都是将用户子域名和其对应URL放在数据库里,这样,用户可以随时注册新的三级域名和更改域名对应的URL,那么下面的工作就是从数据库中检索出该三级域名对应的URL(数据库检索程序略)。 ...... //根据三级域名检索数据库,并得到变量$url,其中存放了该域名对应的URL地址 Header("Location: $url"); //系统重定向,使用户浏览器转向相应URL 获得了对应URL地址之后,我们可以使用PHP的header函数给用户浏览器发送一个重定向信息,让用户转移到相应的URL地址,这样一个完整的虚拟域名服务过程就结束了。这里我们需要注意的是header函数之前,不能对浏览器有任何输出,否则会产生错误,另外重定向操作中的URL地址应该表述完整,例如:http://www.abcde.com/~abc/~index.htm。 
創作者介紹

tc的家

tckitkit 發表在 痞客邦 PIXNET 留言(0) 人氣()