??xml version="1.0" encoding="utf-8" standalone="yes"?> 域名的几个概?域名A记录Q?nbsp; A(Address)记录是域名与IP对应的记录?br> 域名别名记录Q别?CName,Canonical Name)记录Q是域名与域名的别名对应的记录?br> 动态域名解析:A记录中域名对应的IP是静态IPQ把域名解析到动态IP上,叫动态域名解析?br> 域名服务商一般只免费提供A记录Q不免费提供 动态域名解析? 1. 到动态域名解析服务商那里Q申?个免费的二域名Q该二域名可解析到动态IP上)?br> 提供动态域名解析服务商很多Q比如:q壻I88IPQ金万维 {?br> 以花生壳ZQ申请免费二U域名的步骤如下Q?br> 1Q注册一个花生壳QOrayQ护照; 2. l自q域名d别名(CName)记录? 几点说明 1Q花生壳客户端可以安装在你的局域网内的M一台电脑上Q其他动态域名解析的客户端也一P?br> 2Q一个域名可以有多个别名记录Q比如:
@虚拟域名的实现始于在览器中直接以用户和密码的方式登录FTP服务器的Ҏ。如Q在览器的地址栏中键入password:username@ftp://my.ftp.comQ此时IE׃自动以用?nbsp; “username” 和密?nbsp; “password”登陆FTP服务器;相当于先在浏览器的地址栏中键入ftp://my.ftp.comQ进入登录页面,再在提示下输入用户名和密码一栗这是ؓ什么呢Q原来在http1.1协议中,p定实Chttp的访问授权功能,形式如同上面的password:username@FTP或是以header发送的服务器主机。然后其中的password一可以省略,也就是说讉Kusername@服务器主机,q于是以username的n份访问此服务器主ZP样我想大家׃明白Z么我们可以用@Q而不用其他的W号了吧。所以说guestbook@luyu.netQ实际上是以guestbook的用h讉Kluyu.netLQ可Z么能讉K到留a的面呢?其实q只是个单的面跌{功能而以Q具体的在下面将讨论到?nbsp;
实现跌{的功能就是指当用戯入一个页面时Q此面会自动的链接C个新的页面。例如:你在?a >http://luyu.netӞq入的其实不?a >http://luyu.net/index.html或是http://luyu.net/default.html而是def.html。这可是不我自作多情修改了服务器的默认连接文档,况且大部分情况上你也修改不了(因ؓ不是自己的服务器)。其实你在打http://luyu.netӞ览器还是先q入default.html面Q然后由里面的javascript来进行{向,不信的话Q你可以打开我的default.html文档看看q道了Q不q下面我们也会把它脓出来的?nbsp;
其实我的default.html文档中只有下面的几行Q?nbsp;
<script>
this.location = "gourl.asp?user=" + this.location.href;
</script>
只有短短的三行代码,其实他的作用是实现转向Q当|友输入http://bbs@luyu.netӞ实际上这D代码就是将q个Dluser变量Qƈ转送给gourl.asp文g中去Q以便处理。其实user的值关键就在于@前的http://后的那些字符Q在q儿?#8220;BBS”Q?a href="http://guestbook@luyu.net/">http://guestbook@luyu.net中就?#8220;guestbook”。我们得到这些字W后Q再q行相应的{向其真实的网址?nbsp;
如:如果得到的值的“BBS”Q我们就转到http://luyu.net/freeq个|址。那么如果知道是http://luyu.net/free呢,我们可以通过文本或数据库{来来读。这里我们选择ACCESS数据库,因ؓ理h比较方便Q而且支持ASP的主Z般都是支持ACCESS的?nbsp;
下面是库中的url表结构:
字段?nbsp; 字段cd 字段默认?nbsp; //功能注释
id int 自增 关键?nbsp; 1 不用user做关键字是怕其中有中文字符
user 字符?nbsp; null 如BBS或GUESTBOOK的?nbsp;
url 字符?nbsp; null 转向的网址
click int 0 讉K?nbsp;
表里的字D很,只有4个,|友可以Ҏ需要再增加一些功能字D,如是否有弹出H口q告Q访问量分析{。不q必要的是user字段和url字段Q因为我们必要得到user的|再根据它得到其{向url|址Q再在gourl.asp中实现{向就行了?nbsp;
下面是gourl.asp中实现{向的全部E序(我会在程序中写下注释)Q?nbsp;
dim conn,dbs //定义变量 218.61.235.67 丹东学校L
Set conn=Server.CreateObject("ADODB.Connection") //建立q接对象
dbs=server.mappath("url.mdb") //定义要连接的数据库\?nbsp;
conn.open "driver={microsoft access driver (*.mdb)};dbq="&dbs //打开q实现其数据库源的链?nbsp;
user=trim(request.querystring("user")) //得到default.html文g中得到的在浏览器中输入的|址
if user<>"" then //当userg为空?nbsp;
user=replace(user,"http://","") //?#8220;http://”字符串从user值删?nbsp;
at=instr(user,"@") //userg“@”所在位|赋l变量at
else
response.write "信息出错Q请联系moon!" //当usergؓI时则告诉网友有?nbsp;
end if
if at>0 then
user=left(user,at-1) //当userg“@”所在的位置大于0Ӟ其中的部分重赋luserQ如“BBS”?#8220; GUESTBOOK”{?nbsp;
else
response.redirect "def.htm" //如果没有得到其中的|如打http://www.luyu.netӞp回def.htm文g中?nbsp;
response.end //停止输出
end if
if user<>"" then
set rs=conn.execute("select url from dns where user='"&user&"'") //当userg为空Ӟq接数据库,进行搜?nbsp;
if not rs.eof then
conn.execute(“update url set click=click+! Where user=’”&user&”’”)//当记录不为空Ӟ此|站的访问量?
response.redirect rs("url") //再{向其|站
else
response.write "抱歉Q没有这个网?" //记录为空Ӟ警告|友没有此网?nbsp;
end if
set rs=nothing
else
response.write"抱歉Q没有这个域名!" //当user的gؓI时Q则警告|友没有此域?nbsp;
end if
set conn=nothing //关闭数据库连?nbsp;
如果惛_讉K虚拟域名时做个弹出窗口,以帮自己做个q告的话Q可以在上面的代码ҎQ?nbsp;
<script>
window.open(" this.location = "gourl.asp?user=" + this.location.href;
</script>
好了Q这样一个域名访问系l就单的做好了。如果和PHP或是JSP{来实现的话Q原理也是一LQ我怿大家看了q篇文章都可以做出来了。只是把gourl.asp文g改一下便可?br>
我们从域名服务商那里注册的域?极域名)Q一般都会免Ҏ供域名解析。但q种域名解析只能把域名解析导静态IP地址上。要x域名解析到动态IP地址上,q需要购买动态域名解析服务。利用别?CName)记录可以把域名免费解析到动态IP上?/p>
如何把顶U域名免费解析到动态IP上呢Q?/p>
2Q登录花生壳护照Q到 域名服务 > 域名注册 > 免费域名 注册一个免费域名?br> 3Q然后进?我的控制?> qx?> q壳管理,ȀzM注册的域名?br> 4Q下载花生壳客户端?br> 5Q安装花生壳客户端,q运行之?br> 假如你在q壳申L二域名是:myfpt.xicp.net?/p>
假如你的域名是:www.abc.com
C的顶U域名服务商|站Q在域名解析理里,d一个别名记录:
myftp.abc.com <CName> myftp.xicp.net 卻Imyftp.abc.com ?myftp.xicp.net 的别名?br> 以后在访?http://myftp.abc.com q?http://myftp.xicp.netQ?br> 但是览器中昄的依然是 http://myftp.abc.com ?
myftp1.abc.com <CName> myftp.xicp.net
myftp2.abc.com <CName> myftp.xicp.net
myftp2.abc.com <CName> myftp.xicp.net
myftp1.abc.comQmyftp2.abc.comQmyftp3.abc.com 都是 myftp.xicp.net 的别名?/p>
1) d http://www.microsoft.com/learning/access
2) 输入Access Code ACCESS CODE: 7900-DevBMO34-9922(注意:区分大小?
选择你感兴趣的课E?br>详情
http://geekswithblogs.net/thesenator/archive/2007/03/26/109865.aspx
]]>
<HEAD>
<style>
.btn {
BORDER-RIGHT: #7b9ebd 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #7b9ebd 1px solid; PADDING-LEFT: 2px; FONT-SIZE: 12px; FILTER: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffffff, EndColorStr=#cecfde); BORDER-LEFT: #7b9ebd 1px solid; CURSOR: hand; COLOR: black; PADDING-TOP: 2px; BORDER-BOTTOM: #7b9ebd 1px solid
}
.btn1 {
BORDER-RIGHT: #7b9ebd 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #7b9ebd 1px solid; PADDING-LEFT: 2px; FONT-SIZE: 12px; FILTER: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffffff, EndColorStr=#cecfde); BORDER-LEFT: #7b9ebd 1px solid;COLOR: black; PADDING-TOP: 2px; BORDER-BOTTOM: #7b9ebd 1px solid
}
</style>
<script language="JavaScript">
var num = 0;
//insert a row
function addRow()
{
var dataBox = document.getElementById("dataBox");
var otr = dataBox.insertRow(dataBox.rows.length);
var otd = otr.insertCell();
otd.height = "25";
num = num + 1
var sHTML = "<input type='file' name='file"+num+"' SIZE='40' style='border:1px solid #eeeeee; background-color:#eeeeee'>"
otd.innerHTML = sHTML;
}
//delete a row
function delrow()
{
var i = 0,otr;
var dataBox = document.getElementById("databox");
i=num;
if(num!=0){
otr = dataBox.deleteRow(i);
num--;
}
}
function check(){
var file=document.FORM.file0.value;
if(file==""){
alert("please select upload file!");
return false;
}
}
</script>
</HEAD>
<BODY BGCOLOR="white">
<FORM NAME="FORM" METHOD="POST" ACTION="upload.jsp" ENCTYPE="multipart/form-data" onsubmit="return check()">
<table>
<tr><td>
<button name="btnAddRow" onclick="addRow()" class = "btn">Add Row</button>
</td><td>
<button name="btnDeleteRow" onclick="delrow()" class = "btn">Delete Row</button>
</td></tr>
</table>
<table width="80%" id="dataBox" class="tblBillDetail" cellspacing="0" cellpadding="0" height="0" border="0">
<tr><td><input type='file' name='file0' SIZE='40' style='border:1px solid #eeeeee; background-color:#eeeeee'></td></tr>
</table>
<table>
<tr><td>
<INPUT class = "btn" TYPE="SUBMIT" VALUE="Upload">
<p class = "btn1">Max Files Size :10000(KB)<br>Allowed upload :jpg,gif,txt,pdf,doc,xls</p>
</td></tr>
</table>
</FORM>
</BODY>
</HTML>