X@X.X域名转向的实现
发布日期:2021-06-30 19:13:29 浏览次数:3 分类:技术文章

本文共 1713 字,大约阅读时间需要 5 分钟。

www.chinacs.net 中文C#技术站

当你看到时,你肯定把这当作电子邮件地址,其实这个不一定是邮件地址,有可能是域名。现在有越来越多的人开始使用这个形式的地址了。初看起来,你不要以为这个是一个什么非常了不起的技术,其实是一个非常简单的东西。

     我们如果要在IE中访问FTP,会用到这样的形式,其实这种形式就是从上面那个衍生出来的,当我们用这样的形式访问时,IE会自动解析csdn.com得到IP,并在这个IP下调用默认的文档,假如是default.html,此时如果我们用以下的语句:

  <script>

  this.location = "gol.aspx?user=" + this.location.href;

  </script>

 

就把作为user的值提交到了gol.aspx

此时我们可以用一下的gol.aspx来实现域名转向

<%@ Page Language="C#" Debug=true%>

<%@ Import NameSpace="System.Data" %>
<%@ Import NameSpace="System.Data.SqlClient" %>
<script language="C#" runat="server">
void Page_Load(Object src,EventArgs e)
{
 string url=Request.QueryString["user"].ToString();//获取user的值,即在浏览器中的地址
 url=url.ToLower();//将这个地址转成小写形式
 url=url.Replace("如果地址前带http://,则除掉这个前缀
 string[] prefix=url.Split();  //以@拆分这个地址,

 if(prefix[0]=="")如果没有采用@类型的域名,则转到默认文档.

 {
  Response.Redirect("ip.aspx?ip="+Request.ServerVariables["REMOTE_ADDR"]);
  return;
 }

 try//连接SQL 数据库,从数据库提取信息,实现域名转向,并增加访问计数。

 {
  SqlConnection conn=new SqlConnection("server=127.0.0.1;uid=sa;pwd=qi4c;database=qi4c");
  conn.Open();
 
  SqlCommand comm=new SqlCommand("select location,click from redr where prefix='"+prefix[0]+"'",conn);

  SqlDataReader dr=comm.ExecuteReader();

  if(dr.Read())
  {
   string click=(dr.GetInt32(1)+1).ToString();
   string redirecturl=dr.GetString(0).ToString();
   dr.Close();
   comm.CommandText="Update redr set click="+click+"where prefix='"+prefix[0]+"'";
   comm.ExecuteNonQuery();
   Response.Redirect(redirecturl);
  }
  else
  {
   dr.Close();

   Response.Redirect("ip.aspx");

  }
  conn.Close();
 }
 catch(Exception exec)
 {
  Response.Redirect("ip.aspx?ip="+Request.ServerVariables["REMOTE_ADDR"]);
 }
}

</script>

<html>
<head>
<title></title>
</head>
<body>

</body>

</html>
数据库的结构

prefix          char         10

location       char         50

click            int           4

 

转载地址:https://linuxstyle.blog.csdn.net/article/details/155140 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:如何获取主机的IP址址
下一篇:Asp.net+Xml实现无数据库论坛一点即通

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2024年04月16日 01时27分34秒