|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
我先把我自己学习PHP的过程做一下概括:编程 假如本人的办事器也可以完成简记域名就行了。其实这其实不庞杂。你也能够做一个简记域名体系。
简记域名体系的关头手艺在于:完成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();
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=',,'">';} [img=1 border=0 style=,1 src=]http://www.ckuyun.com/[/img]
会有很多高手的鼓励,新手的支持,慢慢你劲头就十足,有更多的信心和兴趣去学。 |
|