欢迎光临

木子屋

标题: 二级域名转向的实现原理

作者: dnawo

日期: 2007-08-30 08:50 AM

分类: 服务器

内容: 典型的二级域名转向系统中，用户可以申请自己的二级域名并设定转向地址，例如申请http://bbs.mzwu.com/转向http://bbs.dvbbs.net/index.asp?boardid=3，今天我们就来说说它的实现原理。
一、实现原理
其主要技术就是使用泛域名，什么是泛域名呢？类似*.mzwu.com即泛域名，这样你使用news.mzwu.com,blog.mzwu.com,bbs.mzwu.com它们都将访问同一服务器上同一个站点。泛域名的设置过程也非常简单：在DNS中建立名为*.mzwu.com的泛域名，将其指向服务器IP，而服务器上要使用泛域名的站点的主机头为空即可(服务器有个特性：当在所有站点主机头中找不到与URL中对应的主机时就转向访问没有主机头的站点，这也是泛域名得以实现的关键！也因为有这个特性，服务器上还是可放置其他站点，但必需设置主机头，访问不会有冲突)。此外，我们还要做一个页面用于处理二级域名并实现转向，当然，得让这个页面是首页。
二、应用举例
这边我们假设已设置好泛域名，服务器上也设置好了站点，省去注册，设置转向域名的过程，只让大家看下数据库结构，然后写出实现转向的ASP源码。
1.数据库结构
2.二级域名处理、实现转向源码
复制内容到剪贴板 程序代码<!-- #include file="conn.asp" -->
<%
Dim ors
Dim sUrl,sHost
Set ors = Server.CreateObject("ADODB.RecordSet")
sUrl = Lcase(Request.ServerVariables("HTTP_HOST"))
sHost = Left(sUrl,InStr(sUrl,".")-1)
ors.open "Select url from table1 where host='" & sHost & "'",oConn,1,2
If not ors.eof Then
'搜索到二级域名信息，跳转到用户指定的URL
Response.Redirect(oRs(0))
Else
'搜索不到二级域名信息，跳转注册页面
Response.Redirect("http://www.mzwu.com/reg.asp")
End If
ors.close
Set ors = Nothing
%>
三、使用扩展
在一些自助建站、oBlog等WEB系统中有提供二级域名功能，有的还可以自己绑定一级域名，其实现原理和上边类似：先判断域名是否存在于库中，存在则加载对应用户的信息，否则跳转至指定页面；对于一级域名绑定则多加一个步骤，在DNS中将其指向服务器IP即可(不要忘了服务器的特性，由于没有在服务器中建立相应的主机头的站点，它也是访问主机头为空的站点)。

+ 查看当前日志评论 (0)

登录

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.426 ms

返回

标题: 二级域名转向的实现原理

你没有权限发表评论

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.426 ms

返回

暂无评论

返回

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.473 ms

返回