泛解析,二级域名转向问题
实现条件:
1、必须有一个顶级域名,而且此域名必须做好泛解析并做好指向。
2、必须有一独立的web服务器 。泛解析的域名指向该服务器。
3、在web服务器上 建一个空的主机头名的web站点。
4、做域名转向
什么是域名泛解析?
客户的顶级域名abc.com,之下所设的*.abc.com全部解析到同一个IP地址上去。比如客户设b.abc.com就会自已自动解析到与abc.com同一个IP地址上去,显示的是跟abc.com一样的页面。
目的是让用户可以注册abc.com为后缀虚拟三级域名系统(也可以称为免费域名)。
实现:
进入DNS
打开要做泛解析的域 (abc.com)
建立新域 名字为 *
进入这个域建立一个空主机 只输入 服务器的IP
OK~!
实现了泛解析就表示以后 *.abc.com的访问都会到 指定的WEB服务器上去,现在要做的就是做域名转向
<!-- #include file="conn/conn.asp" -->
<%
tURL = Request.ServerVariables("HTTP_HOST") '请求页面的地址
dURL = left(turl,instr(tURL,".")-1) '二级域名名字
sURL = dURL&"."
sURL = replace(tURL,""&sURL&"","") '顶级域名,也即abc.com
If dURL="www" or durl="" then
Response.Redirect("默认首页")
Response.End()
Else
Set rs = conn.execute("select id,username from [register] where username='"&dURL&"'")
If rs.eof and rs.bof then
response.Redirect("默认首页")
response.End()
Else
url= "" '此处url 为二级域名访问的路径
rs.close
Set rs = nothing
%>
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<META CONTENT="text/html; CHARSET=UTF-8" HTTP-EQUIV="Content-Type">
<TITLE></TITLE>
</HEAD>
<frameset frameborder="0" framespacing="0" scrolling="no" border="0" marginheight="0" marginwidth="0" rows="0,*">
<frame scrolling="NO" noresize="0" marginwidth="0" marginheight="0" framespacing="0" frameborder="0" target="main" name="main1" SRC="about:blank">
<frame scrolling="yes" noresize="0" marginwidth="0" marginheight="0" framespacing="0" frameborder="0" target="main1" name="main1" SRC="<%=url%>">
<noframes>
<body>
<p>This page uses frames, but your browser doesn't support them.</p></body>
</noframes>
</frameset>
</HTML>
<%
end if
end if
%>
把上面的代码存为index.asp放在WEB服务器的默认站点上就ok
关键的地方就是frameset 框架的使用,目的是让地址栏始终显示的是二级域名地址。