| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2521 人关注过本帖, 2 人收藏
标题:[转载]利用泛解析实现二级域名原理以及程序
只看楼主 加入收藏
hangxj
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:2045
专家分:0
注 册:2006-4-10
收藏(2)
 问题点数:0 回复次数:7 
[转载]利用泛解析实现二级域名原理以及程序

前言:
这是本人收藏的一段代码,这段时间因为太忙所以很少上来帮大家解决问题,
现在发此贴算是补偿吧。希望对大家有用。


要达到二级名的效果,必须一下条件以及流程:
1、必须有一个顶级域名,而且此域名必须做好泛解析并做好指向。
2、必须有一台独立的服务器。泛解析的域名指向该服务器。
3、在服务器上的IIS建一个空的主机头名的web站点。
4、将默认的页面设置为你的二机解析程序(比如:freedns.asp)
5、二级域名系列程序(包括申请页:shenqing.htm,添加页add.asp,解析页freedns.asp,)


此程序的优点:
a,可以限制申请域名的敏感字,比如 hacker,wwww,sex,china等
b, 可以限制申请域名的非法字,比如:!·#¥%……—*()——?‘“/等
c, 每个地址只能申请一个域名。
d,限制申请域名的长度,
e, 如果用户所访问的域名没人申请则转到特定的页面,本例中的http://www.***.com/miss.html
f, 申请了域名:***.yourname.com 可以同时支持:http://***.yourname.com 以及http://www.***.youranme.com 两个域名的访问。


一下为系列程序代码:

申请页面
shenqing.htm

<form action=adddns.asp method=post name=Frm onSubmit="return check_input()"> <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color=red>加*号为必填内容</font><br>
您想注册的域名:http://<input name="nowurl" size=12 style=" BORDER-BOTTOM: 1px double; BORDER-LEFT: 1px double; BORDER-RIGHT: 1px double; BORDER-TOP: 1px double; COLOR: #000000; FONT-SIZE: 9pt"> .***.com
<br>你实际的网站地址:<input name="tourl" size=12 style=" BORDER-BOTTOM: 1px double; BORDER-LEFT: 1px double; BORDER-RIGHT: 1px double; BORDER-TOP: 1px double; COLOR: #000000; FONT-SIZE: 9pt">
你要求显示的title: <input name="company" size=12 style=" BORDER-BOTTOM: 1px double; BORDER-LEFT: 1px double; BORDER-RIGHT: 1px double; BORDER-TOP: 1px double; COLOR: #000000; FONT-SIZE: 9pt"><br>
<input type="submit" name="Submit" value=" 提 交 信 息 " style="border:1px double rgb(88,88,88);font:9pt">   
<input type="reset" name="Reset" value=" 重 新 填 写 " style="border:1px double rgb(88,88,88);font:9pt">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
</form>

添加记录页面
add.asp

<!--#include file="char.inc"-->
<!--#include file="conn.asp"-->
<%
uID=request.cookies("*****")
%>
<%
dim nowurl,tourl,company,along,pbkey
nowurl=trim(request.form("nowurl"))+".***.com"
nurl=trim(request.form("nowurl"))
tourl=trim(request.form("tourl"))
company=trim(request.form("company"))
along=20
pbkey="www,sex,admin,w,ww,wwww,hacker,hack"


set rs=server.createobject("adodb.recordset")
sql="select * from dns where userid='"&uid&"'"
rs.open sql,conn,1,1
if not rs.EOF then
response.write"很抱歉,你已经申请过二级域名,每个用户只能申请一个二级域名!<br>你申请的二级域名是:http://"+rs("nowurl")
response.end
end if


set rs=server.createobject("adodb.recordset")
sql="select * from dns where nowurl='"&nowurl&"'"
rs.open sql,conn,1,1
if not rs.eof then
response.write"很抱歉,你申请的域名:http://"+nowurl+"已经被其他公司申请,请另外申请域名。"
response.end
end if

if len(nurl)>along then
response.write"很抱歉,你输入的域名太长,请重新输入"
response.end
end if

if instr(pbkey,nurl) then
response.write"很抱歉,你输入的域名因为含有敏感字而不管理员屏蔽,请重新输入。"
response.end
end if

'判断字符的合法性
if instr(nurl,"~") or instr(nurl,"`") or instr(nurl,"/") or instr(nurl,"?") or instr(nurl,">") or instr(nurl,"<") or instr(nurl,";") or instr(nurl,":") or instr(nurl,"}") or instr(nurl,"{") or instr(nurl,")") or instr(nurl,"(") or instr(nurl,"*") or instr(nurl,"&") or instr(nurl,"^") or instr(nurl,"%") or instr(nurl,".") or instr(nurl,",") or instr(nurl,"'") or instr(nurl,"~") or instr(nurl,"!") or instr(nurl,"$") then
response.write"很抱歉,你输入的域名含有非法字符,请重新输入,以下字符为非法字符:<br>~ ` / ? > < ; : } { ) ( * & ^ % $ # @ ! "
response.end
end if


set rs=server.createobject("adodb.recordset")
sql="select * from ** where theid is null"
rs.open sql,conn,3,3
rs.addnew
rs("userid")=uID
rs("nowurl")=nowurl
rs("tourl")=tourl
rs("company")=company
rs.update
response.write"祝贺,申请成功,你马上就可使用你的域名:http://"+nowurl
%>

域名解析程序:
freedns.asp


<!--#include file="conn.asp"-->
<%
dim geturl
geturl=replace(Request.ServerVariables("HTTP_HOST"),"www.","")

set rs=server.createobject("adodb.recordset")
sql="select * from tb where nowurl='"&geturl&"'"
rs.open sql,conn,1,1
if rs.eof then
response.redirect"http://www.****.com/miss.html"
else
dim tourl,company
tourl=rs("tourl")
company=rs("company")
%>
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<META CONTENT="text/html; CHARSET=UTF-8" HTTP-EQUIV="Content-Type">
<TITLE><% =company %></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="main" SRC="about:blank">

<frame scrolling="yes" noresize="0" marginwidth="0" marginheight="0" framespacing="0" frameborder="0" target="main" name="main" SRC="<% =tourl %>">

<noframes>
<body>
<p>This page uses frames, but your browser doesn't support them.</p></body>
</noframes>
</frameset>
</HTML>
<% end if %>

搜索更多相关主题的帖子: 域名 原理 解析 
2006-12-01 10:46
xiapi
Rank: 1
等 级:新手上路
威 望:2
帖 子:305
专家分:0
注 册:2006-10-11
收藏
得分:0 
学习

没有什么能够阻挡,我对自由的向往,天马行空的生涯一颗心了无牵挂。
2006-12-01 11:10
做人很低调
Rank: 5Rank: 5
等 级:贵宾
威 望:18
帖 子:1268
专家分:0
注 册:2006-8-2
收藏
得分:0 

谢谢 楼主
先去研究一下
非常感谢。。。。


其实我很低调,只是你不知道...
2006-12-01 11:19
gdk2006
Rank: 4
等 级:业余侠客
威 望:8
帖 子:928
专家分:270
注 册:2006-7-2
收藏
得分:0 
这是干什么用的!!

程序员的悲哀如何找女朋友?
追女解决方案百度“让她着迷”!
2006-12-01 13:17
hangxj
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:2045
专家分:0
注 册:2006-4-10
收藏
得分:0 
利用泛解析实现二级域名原理以及程序
看到题目应该能知道吧?

http://www./
2006-12-02 20:31
yzwt2004
Rank: 1
等 级:新手上路
帖 子:472
专家分:0
注 册:2006-1-18
收藏
得分:0 
如果我买了一个国际域名,空间也是买别人的,如300M.那么我能做这样的二级域名吗??

是不是非得有台自己的服务器?

想学 .Net 了
2006-12-04 12:25
hangxj
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:2045
专家分:0
注 册:2006-4-10
收藏
得分:0 
我想我的前面写的很清楚了吧?

要达到二级名的效果,必须一下条件以及流程:
1、必须有一个顶级域名,而且此域名必须做好泛解析并做好指向。
2、必须有一台独立的服务器。泛解析的域名指向该服务器。
3、在服务器上的IIS建一个空的主机头名的web站点。
4、将默认的页面设置为你的二机解析程序(比如:freedns.asp)
5、二级域名系列程序(包括申请页:shenqing.htm,添加页add.asp,解析页freedns.asp,)

http://www./
2006-12-04 15:06
pucb
Rank: 2
等 级:论坛游民
帖 子:290
专家分:10
注 册:2006-8-1
收藏
得分:0 
还是搞不懂啊.

没有个性,哪来签名!
2007-07-09 11:50
快速回复:[转载]利用泛解析实现二级域名原理以及程序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021895 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved