<script>
this.location = "gol.aspx?user=" + this.location.href;
</script>
就把csdn@csdn.com作为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://","");//如果地址前带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