级域名与与转发的区别就在于,比如:
http://www.0411ln.cn/index.asp
二级域名将转向到http://www.0411ln.cn/index.asp
URL转发会到http://www.0411ln.cn/
也就是说二级域名也可以当作一个域名来看待,现在网上有好多URL转发的程序,我写了个二级域名的程序,好了,闲话少说,代码说话~~
实现原理很简单:
首先,网站根目录下要放一个index.asp文件用于地址的转发
其次,要有个404.htm,名字可以随便取,但在虚拟主机上一定要把它设成默认404错误页,我们主要的域名解析就靠它了,呵呵~
最后,要有个真正的404错误页,叫它true404.htm
第一版代码:
404.htm
<script language=vbscript>
const Domain="0411ln.cn" //改成你的域名(需支持泛解析)
</script>
<script language=javascript>
function getURL()
{
return location.href;
}
function href(val)
{
if (val=="")
{
return location.href;
}
else
{
location.href=val;
}
}
</script>
<script language=vbscript>
url=geturl()
url=replace(url,"http://","")
host=left(url,instr(url,"/")-1)
secDomain=left(host,len(host)-len(Domain)-1)
extUrl=right(url,len(url)-len(host))
exturl=replace(exturl,"&","%26")
href("index.asp?secDomain="+secDomain+"&extUrl="+extUrl)
</script>
index.asp
const Domain="0411ln.cn" //改成你的域名(需支持泛解析)
const frontURL="http://domain.0411ln.cn/" //改成你的网站地址
serverName=Request.ServerVariables("SERVER_NAME")
extURL=Request.ServerVariables("SCRIPT_NAME")
if request("extURL")="" and request("secDomian")="" then
secDomain=left(serverName,len(serverName)-len(Domain)-1)
else
secDomain=request("secDomain")
extURL=request("extUrl")
end if
select case secDomain
case ""
response.redirect frontURL&extURL
case "www"
response.redirect frontURL&extURL
case "ftp"
response.redirect "ftp://172.16.69.81"
case "05jb"
response.redirect frontURL&"05jb"&extURL
case else
response.redirect "true404.htm" //404错误页面
end select
修正第一版中的一些Bug:
1、二级域名后不跟地址只会转到 域名+index.asp
2、不存在的地址不会显示404错误
3、输入不存在的地址造成404转向死循环
第二版代码:
404.htm
<script language=vbscript>
const Domain="royee.com"
const frontURL="http://domain.0411ln.cn/"
</script>
<script language=javascript>
function getURL()
{
return location.href;
}
function href(val)
{
if (val=="")
{
return location.href;
}
else
{
location.href=val;
}
}
</script>
<script language=vbscript>
url=geturl()
url=replace(url,"http://","")
host=left(url,instr(url,"/")-1)
secDomain=left(host,len(host)-len(Domain)-1)
extUrl=right(url,len(url)-len(host))
exturl=replace(exturl,"&","%26")
href(frontURL&"index.asp?secDomain="+secDomain+"&extUrl="+extUrl)
</script>
index.asp
const Domain="0411ln.cn" //改成你的域名(需支持泛解析)
const frontURL="http://domain.0411ln.cn/" //改成你的网站地址
secDomain=request("secDomain")
extURL=request("extUrl")
select case secDomain
case ""
url= frontURL&extURL
case "www"
url= frontURL&extURL
case "ftp"
url= "ftp://172.16.69.81"
case "05jb"
url= frontURL&"05jb"&extURL
case "nod32"
url= frontURL&"nod32"&extURL
case else
url= "true404.htm" //404错误页面
end select
if url<>frontURL then
response.redirect (url)
else
host=request.servervariables("http_host")
response.redirect (frontURL&left(host,len(host)-len(Domain)-1))
end if
trur404.htm自己制作
请各位指正
---------------------------------以上内容来自http://blog.gu999.com.cn--------------------
-----------------------------------------转载请标明出处,谢谢:)---------------------
本文作者:老徐
本文链接:https://bigger.ee/archives/326.html
转载时须注明出处及本声明